Dietary intake, Nutritional status, and Health outcomes among Vegan, Vegetarian and Omnivore families: results from the observational study

Statistical report - data wrangling and exploration

Author

Cahova et al.


Authors and affiliations

Marina Heniková1,2, Anna Ouřadová1, Eliška Selinger1,3, Filip Tichanek4, Petra Polakovičová4, Dana Hrnčířová2, Pavel Dlouhý2, Martin Světnička5, Eva El-Lababidi5, Jana Potočková1, Tilman Kühn6, Monika Cahová4, Jan Gojda1


1 Department of Internal Medicine, Kralovske Vinohrady University Hospital and Third Faculty of Medicine, Charles University, Prague, Czech Republic.
2 Department of Hygiene, Third Faculty of Medicine, Charles University, Prague, Czech Republic.
3 National Health Institute, Prague, Czech Republic.
4 Institute for Clinical and Experimental Medicine, Prague, Czech Republic.
5 Department of Pediatrics, Kralovske Vinohrady University Hospital and Third Faculty of Medicine, Charles University, Prague, Czech Republic.
6 Department of Epidemiology, MedUni, Vienna, Austria.


This is a statistical report of the study currenlty under review in the Communications Medicine journal.

When using this code or data, cite the original publication:

TO BE ADDED

BibTex citation for the original publication:

TO BE ADDED


Original GitHub repository: https://github.com/filip-tichanek/kompas_clinical

Statistical reports can be found on the reports hub.

Data analysis is described in detail in the statistical methods report.


1 Introduction

This project is designed to evaluate and compare clinical outcomes across three distinct dietary strategy groups:

  • Vegans
  • Vegetarians
  • Omnivores

The dataset includes both adults and children, with data clustered within families.

1.1 Main Questions

The study addresses the following key questions:

Q1. Do clinical outcomes vary significantly across different diet strategies?

Q2. Beyond diet group, which factors (e.g., sex, age, breastfeeding status for children, or supplementation when applicable) most strongly influence clinical outcomes? How correlated (“clustered”) are these characteristics within the same family?

Q3. Could the clinical characteristics effectively discriminate between different diet groups?

1.2 Statistical Methods

For full methodological details, see this report. In brief:

  • Robust linear mixed-effects models (rLME) were used to estimate adjusted differences between diet groups (Q1) and assess the importance of other variables (Q2), including how much clinical characteristics tend to cluster within families. Covariates included age, sex, breastfeeding status for children, and relevant supplementation factors where applicable.

  • Elastic net logistic regression was employed to answer Q3, evaluating whether clinical characteristics provide a strong overall signal distinguishing between diet groups, incorporating a predictive perspective.

All analyses were conducted separately for adults and children.

2 Analysis

2.1 Import initiation file

Open code
getwd()
## [1] "/home/ticf/GitRepo/ticf/368_MOCA_kompas_clinical"
setwd('/home/ticf/GitRepo/ticf/368_MOCA_kompas_clinical/')
source('r/368_initiation.R')

2.2 Subject characteristics table

2.2.1 All children characteristics table

Comparison of clinical outcomes across diet groups in children

2.2.1.1 Overall

Open code

DatChar_child_all <- run(
  dat_child_all_tosum %>% 
    select(-FAM, -ID) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')
              ) %>%
    modify_caption(
      "Supplementary Table 1. Children characteristics according to food preferences, all children"
      ) %>% 
    add_p() %>% 
    add_q(),
  
  path = 'gitignore/run/DatChar_child_all', reuse = TRUE)


DatChar_child_all
Supplementary Table 1. Children characteristics according to food preferences, all children

Characteristic

OM
N = 44

1

VG
N = 37

1

VN
N = 61

1

p-value

2

q-value

3
aAGE 3.04 (1.50, 5.51) 3.85 (1.78, 5.84) 2.17 (1.24, 3.57) 0.016 0.063
SEX


0.9 >0.9
    F 24 (55%) 18 (49%) 31 (51%)

    M 20 (45%) 19 (51%) 30 (49%)

aBreastFeed_full 6.00 (5.50, 6.00) 6.00 (6.00, 7.00) 6.00 (5.50, 6.00) 0.002 0.013
aBreastFeed_total 10 (8, 14) 18 (12, 21) 15 (9, 19) 0.006 0.030
    Unknown 5 2 6

aBreastFeed_full_stopped 42 (95%) 33 (89%) 56 (92%) 0.6 0.7
aBreastFeed_total_stopped 31 (79%) 24 (69%) 33 (60%) 0.14 0.3
    Unknown 5 2 6

dev_delay 1 (2.3%) 1 (2.7%) 1 (1.6%) >0.9 >0.9
aMASS_Perc 54 (30, 77) 59 (29, 67) 38 (14, 67) 0.2 0.3
aHEIGHT_Perc 43 (23, 76) 55 (33, 70) 40 (11, 63) 0.12 0.2
aBMI_PERC 49 (36, 70) 50 (36, 60) 52 (32, 69) 0.8 0.8
aM_per_H_PERC 55 (32, 72) 50 (33, 63) 51 (35, 68) 0.6 0.8
aGLY 4.40 (4.10, 4.62) 4.61 (4.11, 4.76) 4.42 (4.19, 4.60) 0.9 >0.9
    Unknown 1 3 6

aTC 3.98 (3.31, 4.38) 3.80 (3.32, 4.32) 3.71 (3.23, 4.02) 0.14 0.3
    Unknown 1 3 6

aHDL 1.28 (0.93, 1.51) 1.25 (1.04, 1.39) 1.25 (1.03, 1.38) >0.9 >0.9
    Unknown 1 3 6

aLDL 2.11 (1.74, 2.47) 2.30 (1.85, 2.55) 1.88 (1.58, 2.22) 0.026 0.084
    Unknown 1 3 6

aTG 1.03 (0.70, 1.25) 0.71 (0.56, 0.96) 1.01 (0.72, 1.40) 0.016 0.063
    Unknown 1 3 6

aCa 2.55 (2.48, 2.66) 2.57 (2.45, 2.64) 2.58 (2.49, 2.65) 0.8 0.8
    Unknown 1 3 5

aP 1.70 (1.56, 1.78) 1.61 (1.49, 1.79) 1.67 (1.55, 1.79) 0.5 0.7
    Unknown 1 3 5

aMg 0.83 (0.79, 0.88) 0.85 (0.81, 0.91) 0.87 (0.83, 0.92) 0.023 0.076
    Unknown 1 3 5

aSe 0.79 (0.71, 0.95) 0.68 (0.60, 0.91) 0.76 (0.53, 0.94) 0.5 0.7
    Unknown 1 4 6

aZn 11.70 (10.70, 13.40) 11.30 (10.70, 12.50) 10.60 (9.80, 12.20) 0.085 0.2
    Unknown 1 4 6

aFE 12 (8, 18) 13 (6, 17) 13 (9, 19) 0.8 0.8
    Unknown 1 3 5

aVKFE 75 (68, 79) 73 (64, 77) 70 (65, 76) 0.12 0.2
    Unknown 1 3 6

aFERR 19 (11, 24) 15 (12, 20) 14 (9, 17) 0.039 0.11
    Unknown 1 3 5

aTRF 2.96 (2.70, 3.15) 2.89 (2.52, 3.04) 2.75 (2.56, 3.00) 0.10 0.2
    Unknown 1 3 5

aSATTRF 16 (12, 23) 18 (10, 27) 19 (11, 26) 0.6 0.7
    Unknown 1 3 5

aTRFINDEX 1.37 (1.04, 1.73) 1.38 (1.06, 1.54) 1.40 (1.17, 1.79) 0.3 0.5
    Unknown 1 3 5

aSTRF 1.71 (1.44, 1.83) 1.61 (1.39, 1.74) 1.62 (1.44, 1.87) 0.5 0.7
    Unknown 1 3 5

aHGB 123 (113, 127) 124 (117, 133) 120 (115, 126) 0.15 0.3
    Unknown 3 4 7

aMCV 78.7 (75.1, 80.6) 78.2 (76.7, 80.3) 80.3 (78.4, 82.0) 0.015 0.063
    Unknown 3 4 7

aPTH 2.50 (1.70, 3.80) 2.80 (1.90, 3.30) 2.85 (2.20, 3.70) 0.13 0.3
    Unknown 1 4 5

aCros 1.22 (0.94, 1.41) 1.24 (1.08, 1.41) 1.24 (1.13, 1.43) 0.5 0.7
    Unknown 1 4 6

aP1NP 555 (433, 920) 580 (447, 879) 669 (562, 1,128) 0.019 0.067
    Unknown 1 4 6

aUI 169 (140, 248) 136 (85, 242) 99 (67, 160) 0.002 0.013
    Unknown 12 6 12

aUREA 4.50 (3.70, 5.60) 4.25 (3.60, 5.10) 3.95 (2.95, 4.65) 0.016 0.063
    Unknown 1 3 5

aCREA 27 (21, 33) 27 (21, 34) 23 (19, 29) 0.017 0.063
    Unknown 1 3 5

aUA 222 (198, 266) 228 (205, 249) 223 (188, 258) 0.7 0.8
    Unknown 1 3 5

aVIT_AKTB12 94 (75, 125) 91 (66, 122) 143 (95, 217) <0.001 0.002
    Unknown 1 4 6

aHCY 8.90 (7.90, 10.40) 8.35 (6.90, 10.40) 7.35 (6.00, 8.80) <0.001 0.004
    Unknown 1 11 11

aMMA 229 (174, 307) 202 (153, 409) 153 (129, 196) <0.001 <0.001
    Unknown 5 4 10

aVIT_D 75 (61, 96) 87 (72, 111) 99 (78, 118) <0.001 0.007
    Unknown 1 3 5

aFOLAT 13.2 (10.0, 16.9) 17.9 (15.9, 19.5) 18.0 (14.4, 22.1) <0.001 <0.001
    Unknown 1 3 6

aIGF1 107 (69, 156) 126 (64, 180) 81 (57, 116) 0.038 0.11
    Unknown 2 6 12

aAL_child 9 (20%) 5 (14%) 3 (4.9%) 0.048 0.12
aSUP_VEG1 0 (0%) 4 (11%) 3 (4.9%) 0.065 0.2
aSup_B12 0 (0%) 25 (68%) 46 (75%) <0.001 <0.001
aSUP_FOL 2 (4.5%) 1 (2.7%) 2 (3.3%) >0.9 >0.9
aSUP_vitA 0 (0%) 0 (0%) 2 (3.3%) 0.5 0.7
aSUP_vitB1 0 (0%) 2 (5.4%) 3 (4.9%) 0.3 0.5
aSUP_vit.B5 0 (0%) 2 (5.4%) 3 (4.9%) 0.3 0.5
aSUP_D 21 (48%) 33 (89%) 48 (79%) <0.001 <0.001
aSUP_Mg 0 (0%) 4 (11%) 3 (4.9%) 0.065 0.2
aSUP_Zn 0 (0%) 0 (0%) 5 (8.2%) 0.043 0.12
aSUP_Se 0 (0%) 0 (0%) 3 (4.9%) 0.3 0.4
aSUP_Ca 0 (0%) 2 (5.4%) 3 (4.9%) 0.3 0.5
aSUP_Fe 2 (4.5%) 4 (11%) 4 (6.6%) 0.6 0.7
aSUP_Iod 0 (0%) 3 (8.1%) 6 (9.8%) 0.076 0.2
aSUP_Ѡ3 5 (11%) 13 (35%) 39 (64%) <0.001 <0.001
aSUP_CHLO 0 (0%) 3 (8.1%) 0 (0%) 0.017 0.063
aSUP_ALG




    0 44 (100%) 37 (100%) 61 (100%)

aSUP_GB 0 (0%) 1 (2.7%) 0 (0%) 0.3 0.4
aSUP_FORT 0 (0%) 1 (2.7%) 0 (0%) 0.3 0.4
aSUP_PROB 3 (6.8%) 6 (16%) 0 (0%) 0.003 0.018
aSUP_OTH 14 (32%) 9 (24%) 7 (11%) 0.036 0.11
aUr_Krea 5.1 (2.4, 5.9) 3.9 (2.1, 6.6) 2.9 (1.3, 5.3) 0.051 0.13
    Unknown 9 1 8

aUr_Ca 1.15 (0.49, 2.25) 1.14 (0.44, 3.10) 0.65 (0.27, 1.86) 0.2 0.3
    Unknown 9 1 8

aCa_per_Krea 0.25 (0.11, 0.50) 0.38 (0.12, 0.81) 0.28 (0.19, 0.61) 0.5 0.6
    Unknown 9 1 8

aI_per_Krea 344 (205, 614) 325 (148, 669) 361 (199, 503) 0.9 >0.9
    Unknown 12 6 13

aP_per_Krea 4.20 (2.77, 6.10) 3.51 (1.68, 4.49) 2.50 (1.44, 3.92) <0.001 0.004
    Unknown 9 1 8

aBiW 3,310 (3,030, 3,650) 3,370 (3,090, 3,600) 3,500 (3,050, 3,690) >0.9 >0.9
    Unknown 0 0 2

aBREAKS 1 (2.3%) 0 (0%) 4 (6.6%) 0.3 0.4
1

Median (Q1, Q3); n (%)

2

Kruskal-Wallis rank sum test; Pearson’s Chi-squared test; Fisher’s exact test

3

False discovery rate correction for multiple testing

Open code

DatChar_child_all_df <- DatChar_child_all$table_body %>%
  as_tibble()

2.2.1.2 OM vs VG

Open code

DatChar_child_all_OM_VG <- run(
  dat_child_all_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'OM' | GRP == 'VG') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    modify_caption("OM vs VG, all children") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
   path = 'gitignore/run/DatChar_child_all_OM_VG', reuse = TRUE)

DatChar_child_all_OM_VG
OM vs VG, all children

Characteristic

OM
N = 44

1

VG
N = 37

1

p-value

2

q-value

3
aAGE 3.04 (1.50, 5.51) 3.85 (1.78, 5.84) 0.5 0.8
SEX

0.6 0.8
    F 24 (55%) 18 (49%)

    M 20 (45%) 19 (51%)

aBreastFeed_full 6.00 (5.50, 6.00) 6.00 (6.00, 7.00) 0.002 0.022
aBreastFeed_total 10 (8, 14) 18 (12, 21) 0.001 0.022
    Unknown 5 2

aBreastFeed_full_stopped 42 (95%) 33 (89%) 0.4 0.8
aBreastFeed_total_stopped 31 (79%) 24 (69%) 0.3 0.8
    Unknown 5 2

dev_delay 1 (2.3%) 1 (2.7%) >0.9 >0.9
aMASS_Perc 54 (30, 77) 59 (29, 67) 0.7 0.8
aHEIGHT_Perc 43 (23, 76) 55 (33, 70) 0.7 0.9
aBMI_PERC 49 (36, 70) 50 (36, 60) 0.5 0.8
aM_per_H_PERC 55 (32, 72) 50 (33, 63) 0.4 0.8
aGLY 4.40 (4.10, 4.62) 4.61 (4.11, 4.76) 0.6 0.8
    Unknown 1 3

aTC 3.98 (3.31, 4.38) 3.80 (3.32, 4.32) 0.5 0.8
    Unknown 1 3

aHDL 1.28 (0.93, 1.51) 1.25 (1.04, 1.39) 0.8 >0.9
    Unknown 1 3

aLDL 2.11 (1.74, 2.47) 2.30 (1.85, 2.55) 0.5 0.8
    Unknown 1 3

aTG 1.03 (0.70, 1.25) 0.71 (0.56, 0.96) 0.018 0.2
    Unknown 1 3

aCa 2.55 (2.48, 2.66) 2.57 (2.45, 2.64) 0.8 >0.9
    Unknown 1 3

aP 1.70 (1.56, 1.78) 1.61 (1.49, 1.79) 0.3 0.8
    Unknown 1 3

aMg 0.83 (0.79, 0.88) 0.85 (0.81, 0.91) 0.2 0.8
    Unknown 1 3

aSe 0.79 (0.71, 0.95) 0.68 (0.60, 0.91) 0.3 0.8
    Unknown 1 4

aZn 11.70 (10.70, 13.40) 11.30 (10.70, 12.50) 0.5 0.8
    Unknown 1 4

aFE 12 (8, 18) 13 (6, 17) 0.9 >0.9
    Unknown 1 3

aVKFE 75 (68, 79) 73 (64, 77) 0.4 0.8
    Unknown 1 3

aFERR 19 (11, 24) 15 (12, 20) 0.6 0.8
    Unknown 1 3

aTRF 2.96 (2.70, 3.15) 2.89 (2.52, 3.04) 0.3 0.8
    Unknown 1 3

aSATTRF 16 (12, 23) 18 (10, 27) 0.8 >0.9
    Unknown 1 3

aTRFINDEX 1.37 (1.04, 1.73) 1.38 (1.06, 1.54) >0.9 >0.9
    Unknown 1 3

aSTRF 1.71 (1.44, 1.83) 1.61 (1.39, 1.74) 0.3 0.8
    Unknown 1 3

aHGB 123 (113, 127) 124 (117, 133) 0.3 0.8
    Unknown 3 4

aMCV 78.7 (75.1, 80.6) 78.2 (76.7, 80.3) >0.9 >0.9
    Unknown 3 4

aPTH 2.50 (1.70, 3.80) 2.80 (1.90, 3.30) >0.9 >0.9
    Unknown 1 4

aCros 1.22 (0.94, 1.41) 1.24 (1.08, 1.41) 0.4 0.8
    Unknown 1 4

aP1NP 555 (433, 920) 580 (447, 879) 0.8 >0.9
    Unknown 1 4

aUI 169 (140, 248) 136 (85, 242) 0.2 0.8
    Unknown 12 6

aUREA 4.50 (3.70, 5.60) 4.25 (3.60, 5.10) 0.3 0.8
    Unknown 1 3

aCREA 27 (21, 33) 27 (21, 34) 0.8 >0.9
    Unknown 1 3

aUA 222 (198, 266) 228 (205, 249) 0.8 >0.9
    Unknown 1 3

aVIT_AKTB12 94 (75, 125) 91 (66, 122) 0.6 0.8
    Unknown 1 4

aHCY 8.90 (7.90, 10.40) 8.35 (6.90, 10.40) 0.3 0.8
    Unknown 1 11

aMMA 229 (174, 307) 202 (153, 409) 0.3 0.8
    Unknown 5 4

aVIT_D 75 (61, 96) 87 (72, 111) 0.022 0.2
    Unknown 1 3

aFOLAT 13.2 (10.0, 16.9) 17.9 (15.9, 19.5) <0.001 <0.001
    Unknown 1 3

aIGF1 107 (69, 156) 126 (64, 180) 0.5 0.8
    Unknown 2 6

aAL_child 9 (20%) 5 (14%) 0.4 0.8
aSUP_VEG1 0 (0%) 4 (11%) 0.040 0.3
aSup_B12 0 (0%) 25 (68%) <0.001 <0.001
aSUP_FOL 2 (4.5%) 1 (2.7%) >0.9 >0.9
aSUP_vitA



    0 44 (100%) 37 (100%)

aSUP_vitB1 0 (0%) 2 (5.4%) 0.2 0.8
aSUP_vit.B5 0 (0%) 2 (5.4%) 0.2 0.8
aSUP_D 21 (48%) 33 (89%) <0.001 0.002
aSUP_Mg 0 (0%) 4 (11%) 0.040 0.3
aSUP_Zn



    0 44 (100%) 37 (100%)

aSUP_Se



    0 44 (100%) 37 (100%)

aSUP_Ca 0 (0%) 2 (5.4%) 0.2 0.8
aSUP_Fe 2 (4.5%) 4 (11%) 0.4 0.8
aSUP_Iod 0 (0%) 3 (8.1%) 0.091 0.5
aSUP_Ѡ3 5 (11%) 13 (35%) 0.010 0.12
aSUP_CHLO 0 (0%) 3 (8.1%) 0.091 0.5
aSUP_ALG



    0 44 (100%) 37 (100%)

aSUP_GB 0 (0%) 1 (2.7%) 0.5 0.8
aSUP_FORT 0 (0%) 1 (2.7%) 0.5 0.8
aSUP_PROB 3 (6.8%) 6 (16%) 0.3 0.8
aSUP_OTH 14 (32%) 9 (24%) 0.5 0.8
aUr_Krea 5.1 (2.4, 5.9) 3.9 (2.1, 6.6) 0.5 0.8
    Unknown 9 1

aUr_Ca 1.15 (0.49, 2.25) 1.14 (0.44, 3.10) 0.6 0.8
    Unknown 9 1

aCa_per_Krea 0.25 (0.11, 0.50) 0.38 (0.12, 0.81) 0.2 0.8
    Unknown 9 1

aI_per_Krea 344 (205, 614) 325 (148, 669) 0.6 0.8
    Unknown 12 6

aP_per_Krea 4.20 (2.77, 6.10) 3.51 (1.68, 4.49) 0.046 0.3
    Unknown 9 1

aBiW 3,310 (3,030, 3,650) 3,370 (3,090, 3,600) >0.9 >0.9
aBREAKS 1 (2.3%) 0 (0%) >0.9 >0.9
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.1.3 OM vs VG

Open code

DatChar_child_all_OM_VN <- run(
  dat_child_all_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'OM' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    modify_caption("OM vs VN, only children >3 year all included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
   path = 'gitignore/run/DatChar_child_all_OM_VN', reuse=TRUE)

DatChar_child_all_OM_VN
OM vs VN, only children >3 year all included

Characteristic

OM
N = 44

1

VN
N = 61

1

p-value

2

q-value

3
aAGE 3.04 (1.50, 5.51) 2.17 (1.24, 3.57) 0.051 0.13
SEX

0.7 0.8
    F 24 (55%) 31 (51%)

    M 20 (45%) 30 (49%)

aBreastFeed_full 6.00 (5.50, 6.00) 6.00 (5.50, 6.00) >0.9 >0.9
aBreastFeed_total 10 (8, 14) 15 (9, 19) 0.047 0.13
    Unknown 5 6

aBreastFeed_full_stopped 42 (95%) 56 (92%) 0.7 0.8
aBreastFeed_total_stopped 31 (79%) 33 (60%) 0.046 0.13
    Unknown 5 6

dev_delay 1 (2.3%) 1 (1.6%) >0.9 >0.9
aMASS_Perc 54 (30, 77) 38 (14, 67) 0.10 0.2
aHEIGHT_Perc 43 (23, 76) 40 (11, 63) 0.2 0.3
aBMI_PERC 49 (36, 70) 52 (32, 69) 0.5 0.7
aM_per_H_PERC 55 (32, 72) 51 (35, 68) 0.5 0.6
aGLY 4.40 (4.10, 4.62) 4.42 (4.19, 4.60) 0.8 >0.9
    Unknown 1 6

aTC 3.98 (3.31, 4.38) 3.71 (3.23, 4.02) 0.048 0.13
    Unknown 1 6

aHDL 1.28 (0.93, 1.51) 1.25 (1.03, 1.38) >0.9 >0.9
    Unknown 1 6

aLDL 2.11 (1.74, 2.47) 1.88 (1.58, 2.22) 0.073 0.2
    Unknown 1 6

aTG 1.03 (0.70, 1.25) 1.01 (0.72, 1.40) 0.8 >0.9
    Unknown 1 6

aCa 2.55 (2.48, 2.66) 2.58 (2.49, 2.65) 0.7 0.8
    Unknown 1 5

aP 1.70 (1.56, 1.78) 1.67 (1.55, 1.79) 0.7 0.8
    Unknown 1 5

aMg 0.83 (0.79, 0.88) 0.87 (0.83, 0.92) 0.006 0.034
    Unknown 1 5

aSe 0.79 (0.71, 0.95) 0.76 (0.53, 0.94) 0.4 0.6
    Unknown 1 6

aZn 11.70 (10.70, 13.40) 10.60 (9.80, 12.20) 0.049 0.13
    Unknown 1 6

aFE 12 (8, 18) 13 (9, 19) 0.5 0.7
    Unknown 1 5

aVKFE 75 (68, 79) 70 (65, 76) 0.037 0.12
    Unknown 1 6

aFERR 19 (11, 24) 14 (9, 17) 0.018 0.071
    Unknown 1 5

aTRF 2.96 (2.70, 3.15) 2.75 (2.56, 3.00) 0.029 0.10
    Unknown 1 5

aSATTRF 16 (12, 23) 19 (11, 26) 0.3 0.5
    Unknown 1 5

aTRFINDEX 1.37 (1.04, 1.73) 1.40 (1.17, 1.79) 0.2 0.4
    Unknown 1 5

aSTRF 1.71 (1.44, 1.83) 1.62 (1.44, 1.87) >0.9 >0.9
    Unknown 1 5

aHGB 123 (113, 127) 120 (115, 126) 0.4 0.6
    Unknown 3 7

aMCV 78.7 (75.1, 80.6) 80.3 (78.4, 82.0) 0.015 0.064
    Unknown 3 7

aPTH 2.50 (1.70, 3.80) 2.85 (2.20, 3.70) 0.10 0.2
    Unknown 1 5

aCros 1.22 (0.94, 1.41) 1.24 (1.13, 1.43) 0.2 0.4
    Unknown 1 6

aP1NP 555 (433, 920) 669 (562, 1,128) 0.010 0.049
    Unknown 1 6

aUI 169 (140, 248) 99 (67, 160) <0.001 0.003
    Unknown 12 12

aUREA 4.50 (3.70, 5.60) 3.95 (2.95, 4.65) 0.004 0.025
    Unknown 1 5

aCREA 27 (21, 33) 23 (19, 29) 0.024 0.084
    Unknown 1 5

aUA 222 (198, 266) 223 (188, 258) 0.5 0.7
    Unknown 1 5

aVIT_AKTB12 94 (75, 125) 143 (95, 217) <0.001 0.002
    Unknown 1 6

aHCY 8.90 (7.90, 10.40) 7.35 (6.00, 8.80) <0.001 0.001
    Unknown 1 11

aMMA 229 (174, 307) 153 (129, 196) <0.001 <0.001
    Unknown 5 10

aVIT_D 75 (61, 96) 99 (78, 118) <0.001 0.002
    Unknown 1 5

aFOLAT 13.2 (10.0, 16.9) 18.0 (14.4, 22.1) <0.001 <0.001
    Unknown 1 6

aIGF1 107 (69, 156) 81 (57, 116) 0.081 0.2
    Unknown 2 12

aAL_child 9 (20%) 3 (4.9%) 0.014 0.061
aSUP_VEG1 0 (0%) 3 (4.9%) 0.3 0.4
aSup_B12 0 (0%) 46 (75%) <0.001 <0.001
aSUP_FOL 2 (4.5%) 2 (3.3%) >0.9 >0.9
aSUP_vitA 0 (0%) 2 (3.3%) 0.5 0.7
aSUP_vitB1 0 (0%) 3 (4.9%) 0.3 0.4
aSUP_vit.B5 0 (0%) 3 (4.9%) 0.3 0.4
aSUP_D 21 (48%) 48 (79%) <0.001 0.007
aSUP_Mg 0 (0%) 3 (4.9%) 0.3 0.4
aSUP_Zn 0 (0%) 5 (8.2%) 0.073 0.2
aSUP_Se 0 (0%) 3 (4.9%) 0.3 0.4
aSUP_Ca 0 (0%) 3 (4.9%) 0.3 0.4
aSUP_Fe 2 (4.5%) 4 (6.6%) >0.9 >0.9
aSUP_Iod 0 (0%) 6 (9.8%) 0.039 0.12
aSUP_Ѡ3 5 (11%) 39 (64%) <0.001 <0.001
aSUP_CHLO



    0 44 (100%) 61 (100%)

aSUP_ALG



    0 44 (100%) 61 (100%)

aSUP_GB



    0 44 (100%) 61 (100%)

aSUP_FORT



    0 44 (100%) 61 (100%)

aSUP_PROB 3 (6.8%) 0 (0%) 0.071 0.2
aSUP_OTH 14 (32%) 7 (11%) 0.010 0.049
aUr_Krea 5.1 (2.4, 5.9) 2.9 (1.3, 5.3) 0.024 0.084
    Unknown 9 8

aUr_Ca 1.15 (0.49, 2.25) 0.65 (0.27, 1.86) 0.3 0.4
    Unknown 9 8

aCa_per_Krea 0.25 (0.11, 0.50) 0.28 (0.19, 0.61) 0.4 0.6
    Unknown 9 8

aI_per_Krea 344 (205, 614) 361 (199, 503) 0.7 0.8
    Unknown 12 13

aP_per_Krea 4.20 (2.77, 6.10) 2.50 (1.44, 3.92) <0.001 0.001
    Unknown 9 8

aBiW 3,310 (3,030, 3,650) 3,500 (3,050, 3,690) >0.9 >0.9
    Unknown 0 2

aBREAKS 1 (2.3%) 4 (6.6%) 0.4 0.6
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test

3

False discovery rate correction for multiple testing

2.2.1.4 VG vs VN

Open code

DatChar_child_all_VG_VN <- run(
  dat_child_all_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'VG' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    modify_caption("VG vs VN, only children >3 year all included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
   path = 'gitignore/run/DatChar_child_all_VG_VN', reuse=TRUE)

DatChar_child_all_VG_VN
VG vs VN, only children >3 year all included

Characteristic

VG
N = 37

1

VN
N = 61

1

p-value

2

q-value

3
aAGE 3.85 (1.78, 5.84) 2.17 (1.24, 3.57) 0.007 0.070
SEX

0.8 >0.9
    F 18 (49%) 31 (51%)

    M 19 (51%) 30 (49%)

aBreastFeed_full 6.00 (6.00, 7.00) 6.00 (5.50, 6.00) 0.002 0.046
aBreastFeed_total 18 (12, 21) 15 (9, 19) 0.13 0.4
    Unknown 2 6

aBreastFeed_full_stopped 33 (89%) 56 (92%) 0.7 >0.9
aBreastFeed_total_stopped 24 (69%) 33 (60%) 0.4 0.6
    Unknown 2 6

dev_delay 1 (2.7%) 1 (1.6%) >0.9 >0.9
aMASS_Perc 59 (29, 67) 38 (14, 67) 0.2 0.5
aHEIGHT_Perc 55 (33, 70) 40 (11, 63) 0.045 0.2
aBMI_PERC 50 (36, 60) 52 (32, 69) 0.9 >0.9
aM_per_H_PERC 50 (33, 63) 51 (35, 68) 0.8 >0.9
aGLY 4.61 (4.11, 4.76) 4.42 (4.19, 4.60) 0.6 0.8
    Unknown 3 6

aTC 3.80 (3.32, 4.32) 3.71 (3.23, 4.02) 0.3 0.6
    Unknown 3 6

aHDL 1.25 (1.04, 1.39) 1.25 (1.03, 1.38) >0.9 >0.9
    Unknown 3 6

aLDL 2.30 (1.85, 2.55) 1.88 (1.58, 2.22) 0.009 0.081
    Unknown 3 6

aTG 0.71 (0.56, 0.96) 1.01 (0.72, 1.40) 0.007 0.070
    Unknown 3 6

aCa 2.57 (2.45, 2.64) 2.58 (2.49, 2.65) 0.4 0.7
    Unknown 3 5

aP 1.61 (1.49, 1.79) 1.67 (1.55, 1.79) 0.4 0.6
    Unknown 3 5

aMg 0.85 (0.81, 0.91) 0.87 (0.83, 0.92) 0.2 0.5
    Unknown 3 5

aSe 0.68 (0.60, 0.91) 0.76 (0.53, 0.94) >0.9 >0.9
    Unknown 4 6

aZn 11.30 (10.70, 12.50) 10.60 (9.80, 12.20) 0.11 0.3
    Unknown 4 6

aFE 13 (6, 17) 13 (9, 19) 0.6 0.8
    Unknown 3 5

aVKFE 73 (64, 77) 70 (65, 76) 0.4 0.6
    Unknown 3 6

aFERR 15 (12, 20) 14 (9, 17) 0.081 0.3
    Unknown 3 5

aTRF 2.89 (2.52, 3.04) 2.75 (2.56, 3.00) 0.4 0.6
    Unknown 3 5

aSATTRF 18 (10, 27) 19 (11, 26) 0.6 0.8
    Unknown 3 5

aTRFINDEX 1.38 (1.06, 1.54) 1.40 (1.17, 1.79) 0.2 0.4
    Unknown 3 5

aSTRF 1.61 (1.39, 1.74) 1.62 (1.44, 1.87) 0.4 0.6
    Unknown 3 5

aHGB 124 (117, 133) 120 (115, 126) 0.050 0.2
    Unknown 4 7

aMCV 78.2 (76.7, 80.3) 80.3 (78.4, 82.0) 0.016 0.10
    Unknown 4 7

aPTH 2.80 (1.90, 3.30) 2.85 (2.20, 3.70) 0.087 0.3
    Unknown 4 5

aCros 1.24 (1.08, 1.41) 1.24 (1.13, 1.43) >0.9 >0.9
    Unknown 4 6

aP1NP 580 (447, 879) 669 (562, 1,128) 0.038 0.2
    Unknown 4 6

aUI 136 (85, 242) 99 (67, 160) 0.078 0.3
    Unknown 6 12

aUREA 4.25 (3.60, 5.10) 3.95 (2.95, 4.65) 0.13 0.4
    Unknown 3 5

aCREA 27 (21, 34) 23 (19, 29) 0.012 0.10
    Unknown 3 5

aUA 228 (205, 249) 223 (188, 258) 0.5 0.8
    Unknown 3 5

aVIT_AKTB12 91 (66, 122) 143 (95, 217) <0.001 0.046
    Unknown 4 6

aHCY 8.35 (6.90, 10.40) 7.35 (6.00, 8.80) 0.026 0.2
    Unknown 11 11

aMMA 202 (153, 409) 153 (129, 196) 0.003 0.046
    Unknown 4 10

aVIT_D 87 (72, 111) 99 (78, 118) 0.2 0.5
    Unknown 3 5

aFOLAT 17.9 (15.9, 19.5) 18.0 (14.4, 22.1) 0.6 0.8
    Unknown 3 6

aIGF1 126 (64, 180) 81 (57, 116) 0.015 0.10
    Unknown 6 12

aAL_child 5 (14%) 3 (4.9%) 0.15 0.4
aSUP_VEG1 4 (11%) 3 (4.9%) 0.4 0.6
aSup_B12 25 (68%) 46 (75%) 0.4 0.6
aSUP_FOL 1 (2.7%) 2 (3.3%) >0.9 >0.9
aSUP_vitA 0 (0%) 2 (3.3%) 0.5 0.8
aSUP_vitB1 2 (5.4%) 3 (4.9%) >0.9 >0.9
aSUP_vit.B5 2 (5.4%) 3 (4.9%) >0.9 >0.9
aSUP_D 33 (89%) 48 (79%) 0.2 0.4
aSUP_Mg 4 (11%) 3 (4.9%) 0.4 0.6
aSUP_Zn 0 (0%) 5 (8.2%) 0.2 0.4
aSUP_Se 0 (0%) 3 (4.9%) 0.3 0.6
aSUP_Ca 2 (5.4%) 3 (4.9%) >0.9 >0.9
aSUP_Fe 4 (11%) 4 (6.6%) 0.5 0.7
aSUP_Iod 3 (8.1%) 6 (9.8%) >0.9 >0.9
aSUP_Ѡ3 13 (35%) 39 (64%) 0.006 0.070
aSUP_CHLO 3 (8.1%) 0 (0%) 0.051 0.2
aSUP_ALG



    0 37 (100%) 61 (100%)

aSUP_GB 1 (2.7%) 0 (0%) 0.4 0.6
aSUP_FORT 1 (2.7%) 0 (0%) 0.4 0.6
aSUP_PROB 6 (16%) 0 (0%) 0.002 0.046
aSUP_OTH 9 (24%) 7 (11%) 0.10 0.3
aUr_Krea 3.85 (2.10, 6.55) 2.90 (1.30, 5.30) 0.094 0.3
    Unknown 1 8

aUr_Ca 1.14 (0.44, 3.10) 0.65 (0.27, 1.86) 0.082 0.3
    Unknown 1 8

aCa_per_Krea 0.38 (0.12, 0.81) 0.28 (0.19, 0.61) 0.6 0.8
    Unknown 1 8

aI_per_Krea 325 (148, 669) 361 (199, 503) >0.9 >0.9
    Unknown 6 13

aP_per_Krea 3.51 (1.68, 4.49) 2.50 (1.44, 3.92) 0.073 0.3
    Unknown 1 8

aBiW 3,370 (3,090, 3,600) 3,500 (3,050, 3,690) 0.7 >0.9
    Unknown 0 2

aBREAKS 0 (0%) 4 (6.6%) 0.3 0.6
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.2 Children >3 y.o. characteristics table

2.2.2.1 Overall

Open code

DatChar_child_old <- run(
  dat_child_old_tosum %>% 
    select(-FAM, -ID) %>% 
    tbl_summary(
      by='GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
  
      modify_caption("Supplementary Table 2. Children characteristics according to food preferences, with only children >3 year old included") %>% 
    
    add_p() %>% 
    add_q(),
  
  path = 'gitignore/run/DatChar_child_old', reuse=TRUE)

DatChar_child_old
Supplementary Table 2. Children characteristics according to food preferences, with only children >3 year old included

Characteristic

OM
N = 22

1

VG
N = 22

1

VN
N = 21

1

p-value

2

q-value

3
aAGE 5.51 (4.27, 6.30) 5.28 (4.40, 6.89) 4.67 (3.57, 5.78) 0.14 0.3
SEX


0.5 0.7
    F 13 (59%) 9 (41%) 10 (48%)

    M 9 (41%) 13 (59%) 11 (52%)

aBreastFeed_full 6.00 (5.00, 6.00) 7.00 (6.00, 8.00) 6.00 (6.00, 6.00) <0.001 0.011
aBreastFeed_total 10 (8, 16) 18 (15, 22) 18 (12, 35) 0.003 0.029
    Unknown 3 0 2

aBreastFeed_full_stopped




    1 22 (100%) 22 (100%) 21 (100%)

aBreastFeed_total_stopped 19 (100%) 22 (100%) 18 (95%) 0.6 0.8
    Unknown 3 0 2

dev_delay 1 (4.5%) 1 (4.5%) 1 (4.8%) >0.9 >0.9
aMASS_Perc 52 (28, 76) 62 (27, 65) 40 (27, 67) 0.6 0.8
aHEIGHT_Perc 41 (18, 76) 57 (37, 74) 42 (11, 61) 0.4 0.7
aBMI_PERC 46 (34, 63) 46 (31, 58) 43 (21, 68) 0.9 >0.9
aM_per_H_PERC 47 (29, 63) 47 (32, 58) 43 (17, 70) 0.8 >0.9
aGLY 4.28 (3.97, 4.74) 4.26 (3.79, 4.72) 4.33 (4.19, 4.56) >0.9 >0.9
    Unknown 0 1 0

aTC 4.05 (3.60, 4.26) 3.70 (3.19, 4.32) 3.42 (3.20, 3.87) 0.045 0.2
    Unknown 0 1 0

aHDL 1.35 (1.03, 1.68) 1.31 (1.10, 1.43) 1.23 (1.12, 1.49) 0.7 0.9
    Unknown 0 1 0

aLDL 2.15 (1.83, 2.26) 2.11 (1.79, 2.49) 1.71 (1.56, 2.03) 0.029 0.2
    Unknown 0 1 0

aTG 0.89 (0.70, 1.22) 0.62 (0.56, 0.92) 0.93 (0.65, 1.10) 0.2 0.3
    Unknown 0 1 0

aCa 2.50 (2.44, 2.55) 2.50 (2.45, 2.58) 2.49 (2.47, 2.52) >0.9 >0.9
    Unknown 0 1 0

aP 1.65 (1.48, 1.77) 1.54 (1.44, 1.63) 1.58 (1.43, 1.67) 0.5 0.7
    Unknown 0 1 0

aMg 0.82 (0.79, 0.85) 0.83 (0.80, 0.87) 0.86 (0.81, 0.89) 0.090 0.3
    Unknown 0 1 0

aSe 0.83 (0.73, 0.92) 0.68 (0.60, 0.91) 0.77 (0.59, 0.86) 0.4 0.7
    Unknown 0 1 0

aZn 11.75 (10.80, 13.10) 11.70 (10.90, 13.30) 10.60 (9.60, 13.10) 0.4 0.7
    Unknown 0 1 0

aFE 15 (9, 18) 13 (12, 19) 17 (11, 19) 0.8 >0.9
    Unknown 0 1 0

aVKFE 72 (66, 78) 73 (63, 77) 67 (62, 74) 0.2 0.4
    Unknown 0 1 0

aFERR 22 (17, 30) 19 (15, 26) 16 (12, 22) 0.10 0.3
    Unknown 0 1 0

aTRF 2.86 (2.63, 3.09) 2.88 (2.51, 3.05) 2.66 (2.47, 2.95) 0.2 0.4
    Unknown 0 1 0

aSATTRF 20 (15, 25) 20 (14, 27) 25 (17, 30) 0.6 0.8
    Unknown 0 1 0

aTRFINDEX 1.13 (0.95, 1.40) 1.28 (1.03, 1.39) 1.20 (1.14, 1.43) 0.3 0.6
    Unknown 0 1 0

aSTRF 1.49 (1.36, 1.63) 1.60 (1.40, 1.67) 1.54 (1.36, 1.66) 0.6 0.8
    Unknown 0 1 0

aHGB 127 (122, 132) 129 (123, 135) 124 (117, 128) 0.090 0.3
    Unknown 0 1 0

aMCV 80.25 (78.40, 82.20) 78.70 (76.90, 80.30) 82.70 (80.10, 84.20) 0.002 0.022
    Unknown 0 1 0

aPTH 2.55 (1.80, 3.10) 2.80 (1.90, 3.30) 2.70 (2.30, 3.50) 0.8 0.9
    Unknown 0 1 0

aCros 1.24 (0.94, 1.52) 1.24 (1.12, 1.41) 1.25 (1.14, 1.41) >0.9 >0.9
    Unknown 0 1 0

aP1NP 454 (397, 511) 492 (442, 649) 572 (519, 644) 0.013 0.090
    Unknown 0 1 0

aUI 173 (140, 256) 126 (85, 182) 110 (75, 160) 0.032 0.2
    Unknown 2 4 3

aUREA 4.50 (4.00, 5.40) 4.70 (4.30, 5.80) 4.10 (3.90, 4.80) 0.083 0.3
    Unknown 0 1 0

aCREA 33 (28, 37) 31 (27, 36) 30 (27, 33) 0.2 0.4
    Unknown 0 1 0

aUA 222 (209, 245) 236 (221, 249) 226 (202, 261) 0.6 0.8
    Unknown 0 1 0

aVIT_AKTB12 118 (94, 133) 95 (81, 135) 143 (102, 228) 0.070 0.3
    Unknown 0 1 0

aHCY 8.50 (8.00, 10.00) 7.95 (6.90, 10.00) 7.65 (6.30, 8.60) 0.13 0.3
    Unknown 0 6 3

aMMA 204 (169, 239) 170 (144, 257) 155 (136, 202) 0.067 0.3
    Unknown 0 1 0

aVIT_D 70 (59, 87) 85 (70, 97) 94 (77, 104) 0.035 0.2
    Unknown 0 1 0

aFOLAT 11.1 (9.2, 13.8) 17.5 (15.0, 18.8) 17.2 (13.1, 21.0) <0.001 0.004
    Unknown 0 1 0

aIGF1 156 (107, 192) 154 (118, 183) 105 (81, 137) 0.065 0.3
    Unknown 1 2 1

aAL_child 4 (18%) 4 (18%) 2 (9.5%) 0.8 0.9
aSUP_VEG1 0 (0%) 4 (18%) 2 (9.5%) 0.11 0.3
aSup_B12 0 (0%) 18 (82%) 16 (76%) <0.001 <0.001
aSUP_FOL 1 (4.5%) 1 (4.5%) 1 (4.8%) >0.9 >0.9
aSUP_vitA 0 (0%) 0 (0%) 1 (4.8%) 0.3 0.6
aSUP_vitB1 0 (0%) 2 (9.1%) 2 (9.5%) 0.5 0.7
aSUP_vit.B5 0 (0%) 2 (9.1%) 2 (9.5%) 0.5 0.7
aSUP_D 9 (41%) 19 (86%) 15 (71%) 0.005 0.044
aSUP_Mg 0 (0%) 4 (18%) 3 (14%) 0.11 0.3
aSUP_Zn 0 (0%) 0 (0%) 4 (19%) 0.009 0.068
aSUP_Se 0 (0%) 0 (0%) 2 (9.5%) 0.10 0.3
aSUP_Ca 0 (0%) 2 (9.1%) 2 (9.5%) 0.5 0.7
aSUP_Fe 1 (4.5%) 3 (14%) 2 (9.5%) 0.7 0.9
aSUP_Iod 0 (0%) 3 (14%) 4 (19%) 0.087 0.3
aSUP_Ѡ3 3 (14%) 11 (50%) 16 (76%) <0.001 0.004
aSUP_CHLO 0 (0%) 3 (14%) 0 (0%) 0.10 0.3
aSUP_ALG




    0 22 (100%) 22 (100%) 21 (100%)

aSUP_GB 0 (0%) 1 (4.5%) 0 (0%) >0.9 >0.9
aSUP_FORT 0 (0%) 1 (4.5%) 0 (0%) >0.9 >0.9
aSUP_PROB 1 (4.5%) 4 (18%) 0 (0%) 0.12 0.3
aSUP_OTH 9 (41%) 5 (23%) 2 (9.5%) 0.056 0.3
aUr_Krea 5.3 (4.8, 8.5) 5.1 (3.4, 6.9) 4.1 (1.6, 9.0) 0.5 0.7
aUr_Ca 1.41 (0.51, 2.39) 1.76 (0.37, 3.47) 0.61 (0.28, 1.26) 0.2 0.4
aCa_per_Krea 0.26 (0.12, 0.46) 0.33 (0.11, 0.78) 0.21 (0.08, 0.38) 0.3 0.6
aI_per_Krea 259 (189, 440) 169 (136, 366) 339 (107, 404) 0.6 0.8
    Unknown 2 4 3

aP_per_Krea 3.31 (2.59, 5.41) 3.36 (1.56, 4.83) 1.66 (1.42, 3.00) <0.001 0.011
aBiW 3,290 (3,018, 3,600) 3,325 (2,990, 3,680) 3,425 (2,785, 3,720) >0.9 >0.9
    Unknown 0 0 1

aBREAKS 1 (4.5%) 0 (0%) 3 (14%) 0.12 0.3
1

Median (Q1, Q3); n (%)

2

Kruskal-Wallis rank sum test; Pearson’s Chi-squared test; Fisher’s exact test

3

False discovery rate correction for multiple testing

Open code

DatChar_child_old_df <- DatChar_child_old$table_body %>%
  as_tibble()

2.2.2.2 OM vs VG

Open code

DatChar_child_old_OM_VG <- run(
  dat_child_old_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'OM' | GRP == 'VG') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    modify_caption("OM vs VG, only children >3 year old included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
   path = 'gitignore/run/DatChar_child_old_OM_VG', reuse=TRUE)

DatChar_child_old_OM_VG
OM vs VG, only children >3 year old included

Characteristic

OM
N = 22

1

VG
N = 22

1

p-value

2

q-value

3
aAGE 5.51 (4.27, 6.30) 5.28 (4.40, 6.89) 0.8 >0.9
SEX

0.2 0.8
    F 13 (59%) 9 (41%)

    M 9 (41%) 13 (59%)

aBreastFeed_full 6.00 (5.00, 6.00) 7.00 (6.00, 8.00) <0.001 0.002
aBreastFeed_total 10 (8, 16) 18 (15, 22) 0.002 0.030
    Unknown 3 0

aBreastFeed_full_stopped



    1 22 (100%) 22 (100%)

aBreastFeed_total_stopped



    1 19 (100%) 22 (100%)

    Unknown 3 0

dev_delay 1 (4.5%) 1 (4.5%) >0.9 >0.9
aMASS_Perc 52 (28, 76) 62 (27, 65) 0.9 >0.9
aHEIGHT_Perc 41 (18, 76) 57 (37, 74) 0.6 >0.9
aBMI_PERC 46 (34, 63) 46 (31, 58) 0.7 >0.9
aM_per_H_PERC 47 (29, 63) 47 (32, 58) 0.5 >0.9
aGLY 4.28 (3.97, 4.74) 4.26 (3.79, 4.72) 0.8 >0.9
    Unknown 0 1

aTC 4.05 (3.60, 4.26) 3.70 (3.19, 4.32) 0.3 0.8
    Unknown 0 1

aHDL 1.35 (1.03, 1.68) 1.31 (1.10, 1.43) 0.5 >0.9
    Unknown 0 1

aLDL 2.15 (1.83, 2.26) 2.11 (1.79, 2.49) >0.9 >0.9
    Unknown 0 1

aTG 0.89 (0.70, 1.22) 0.62 (0.56, 0.92) 0.093 0.6
    Unknown 0 1

aCa 2.50 (2.44, 2.55) 2.50 (2.45, 2.58) 0.8 >0.9
    Unknown 0 1

aP 1.65 (1.48, 1.77) 1.54 (1.44, 1.63) 0.3 0.8
    Unknown 0 1

aMg 0.82 (0.79, 0.85) 0.83 (0.80, 0.87) 0.3 0.8
    Unknown 0 1

aSe 0.83 (0.73, 0.92) 0.68 (0.60, 0.91) 0.2 0.8
    Unknown 0 1

aZn 11.75 (10.80, 13.10) 11.70 (10.90, 13.30) >0.9 >0.9
    Unknown 0 1

aFE 15 (9, 18) 13 (12, 19) 0.6 >0.9
    Unknown 0 1

aVKFE 72 (66, 78) 73 (63, 77) 0.7 >0.9
    Unknown 0 1

aFERR 22 (17, 30) 19 (15, 26) 0.7 >0.9
    Unknown 0 1

aTRF 2.86 (2.63, 3.09) 2.88 (2.51, 3.05) 0.6 >0.9
    Unknown 0 1

aSATTRF 20 (15, 25) 20 (14, 27) >0.9 >0.9
    Unknown 0 1

aTRFINDEX 1.13 (0.95, 1.40) 1.28 (1.03, 1.39) 0.5 >0.9
    Unknown 0 1

aSTRF 1.49 (1.36, 1.63) 1.60 (1.40, 1.67) 0.3 0.8
    Unknown 0 1

aHGB 127 (122, 132) 129 (123, 135) 0.4 0.8
    Unknown 0 1

aMCV 80.25 (78.40, 82.20) 78.70 (76.90, 80.30) 0.13 0.6
    Unknown 0 1

aPTH 2.55 (1.80, 3.10) 2.80 (1.90, 3.30) >0.9 >0.9
    Unknown 0 1

aCros 1.24 (0.94, 1.52) 1.24 (1.12, 1.41) 0.7 >0.9
    Unknown 0 1

aP1NP 454 (397, 511) 492 (442, 649) 0.11 0.6
    Unknown 0 1

aUI 173 (140, 256) 126 (85, 182) 0.041 0.4
    Unknown 2 4

aUREA 4.50 (4.00, 5.40) 4.70 (4.30, 5.80) 0.7 >0.9
    Unknown 0 1

aCREA 33 (28, 37) 31 (27, 36) 0.7 >0.9
    Unknown 0 1

aUA 222 (209, 245) 236 (221, 249) 0.3 0.8
    Unknown 0 1

aVIT_AKTB12 118 (94, 133) 95 (81, 135) 0.8 >0.9
    Unknown 0 1

aHCY 8.50 (8.00, 10.00) 7.95 (6.90, 10.00) 0.3 0.8
    Unknown 0 6

aMMA 204 (169, 239) 170 (144, 257) 0.4 >0.9
    Unknown 0 1

aVIT_D 70 (59, 87) 85 (70, 97) 0.047 0.4
    Unknown 0 1

aFOLAT 11.1 (9.2, 13.8) 17.5 (15.0, 18.8) <0.001 0.001
    Unknown 0 1

aIGF1 156 (107, 192) 154 (118, 183) >0.9 >0.9
    Unknown 1 2

aAL_child 4 (18%) 4 (18%) >0.9 >0.9
aSUP_VEG1 0 (0%) 4 (18%) 0.11 0.6
aSup_B12 0 (0%) 18 (82%) <0.001 <0.001
aSUP_FOL 1 (4.5%) 1 (4.5%) >0.9 >0.9
aSUP_vitA



    0 22 (100%) 22 (100%)

aSUP_vitB1 0 (0%) 2 (9.1%) 0.5 >0.9
aSUP_vit.B5 0 (0%) 2 (9.1%) 0.5 >0.9
aSUP_D 9 (41%) 19 (86%) 0.002 0.028
aSUP_Mg 0 (0%) 4 (18%) 0.11 0.6
aSUP_Zn



    0 22 (100%) 22 (100%)

aSUP_Se



    0 22 (100%) 22 (100%)

aSUP_Ca 0 (0%) 2 (9.1%) 0.5 >0.9
aSUP_Fe 1 (4.5%) 3 (14%) 0.6 >0.9
aSUP_Iod 0 (0%) 3 (14%) 0.2 0.8
aSUP_Ѡ3 3 (14%) 11 (50%) 0.010 0.10
aSUP_CHLO 0 (0%) 3 (14%) 0.2 0.8
aSUP_ALG



    0 22 (100%) 22 (100%)

aSUP_GB 0 (0%) 1 (4.5%) >0.9 >0.9
aSUP_FORT 0 (0%) 1 (4.5%) >0.9 >0.9
aSUP_PROB 1 (4.5%) 4 (18%) 0.3 0.8
aSUP_OTH 9 (41%) 5 (23%) 0.2 0.8
aUr_Krea 5.3 (4.8, 8.5) 5.1 (3.4, 6.9) 0.6 >0.9
aUr_Ca 1.41 (0.51, 2.39) 1.76 (0.37, 3.47) >0.9 >0.9
aCa_per_Krea 0.26 (0.12, 0.46) 0.33 (0.11, 0.78) 0.5 >0.9
aI_per_Krea 259 (189, 440) 169 (136, 366) 0.3 0.8
    Unknown 2 4

aP_per_Krea 3.31 (2.59, 5.41) 3.36 (1.56, 4.83) 0.2 0.8
aBiW 3,290 (3,018, 3,600) 3,325 (2,990, 3,680) >0.9 >0.9
aBREAKS 1 (4.5%) 0 (0%) >0.9 >0.9
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.2.3 OM vs VN

Open code

DatChar_child_old_OM_VN <- run(
  dat_child_old_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'OM' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    modify_caption("OM vs VN, only children >3 year old included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
   path = 'gitignore/run/DatChar_child_old_OM_VN', reuse=TRUE)

DatChar_child_old_OM_VN
OM vs VN, only children >3 year old included

Characteristic

OM
N = 22

1

VN
N = 21

1

p-value

2

q-value

3
aAGE 5.51 (4.27, 6.30) 4.67 (3.57, 5.78) 0.14 0.3
SEX

0.5 0.7
    F 13 (59%) 10 (48%)

    M 9 (41%) 11 (52%)

aBreastFeed_full 6.00 (5.00, 6.00) 6.00 (6.00, 6.00) 0.089 0.2
aBreastFeed_total 10 (8, 16) 18 (12, 35) 0.004 0.049
    Unknown 3 2

aBreastFeed_full_stopped



    1 22 (100%) 21 (100%)

aBreastFeed_total_stopped 19 (100%) 18 (95%) >0.9 >0.9
    Unknown 3 2

dev_delay 1 (4.5%) 1 (4.8%) >0.9 >0.9
aMASS_Perc 52 (28, 76) 40 (27, 67) 0.4 0.6
aHEIGHT_Perc 41 (18, 76) 42 (11, 61) 0.6 0.8
aBMI_PERC 46 (34, 63) 43 (21, 68) 0.7 0.8
aM_per_H_PERC 47 (29, 63) 43 (17, 70) 0.8 0.9
aGLY 4.28 (3.97, 4.74) 4.33 (4.19, 4.56) 0.7 0.8
aTC 4.05 (3.60, 4.26) 3.42 (3.20, 3.87) 0.009 0.085
aHDL 1.35 (1.03, 1.68) 1.23 (1.12, 1.49) 0.5 0.7
aLDL 2.15 (1.83, 2.26) 1.71 (1.56, 2.03) 0.017 0.12
aTG 0.89 (0.70, 1.22) 0.93 (0.65, 1.10) 0.8 0.9
aCa 2.50 (2.44, 2.55) 2.49 (2.47, 2.52) >0.9 >0.9
aP 1.65 (1.48, 1.77) 1.58 (1.43, 1.67) 0.3 0.5
aMg 0.82 (0.79, 0.85) 0.86 (0.81, 0.89) 0.030 0.2
aSe 0.83 (0.73, 0.92) 0.77 (0.59, 0.86) 0.3 0.5
aZn 11.75 (10.80, 13.10) 10.60 (9.60, 13.10) 0.4 0.6
aFE 15 (9, 18) 17 (11, 19) 0.7 0.8
aVKFE 72 (66, 78) 67 (62, 74) 0.10 0.2
aFERR 22 (17, 30) 16 (12, 22) 0.058 0.2
aTRF 2.86 (2.63, 3.09) 2.66 (2.47, 2.95) 0.087 0.2
aSATTRF 20 (15, 25) 25 (17, 30) 0.3 0.5
aTRFINDEX 1.13 (0.95, 1.40) 1.20 (1.14, 1.43) 0.14 0.3
aSTRF 1.49 (1.36, 1.63) 1.54 (1.36, 1.66) 0.7 0.8
aHGB 127 (122, 132) 124 (117, 128) 0.2 0.4
aMCV 80.25 (78.40, 82.20) 82.70 (80.10, 84.20) 0.032 0.2
aPTH 2.55 (1.80, 3.10) 2.70 (2.30, 3.50) 0.5 0.7
aCros 1.24 (0.94, 1.52) 1.25 (1.14, 1.41) 0.7 0.8
aP1NP 454 (397, 511) 572 (519, 644) 0.003 0.040
aUI 173 (140, 256) 110 (75, 160) 0.019 0.12
    Unknown 2 3

aUREA 4.50 (4.00, 5.40) 4.10 (3.90, 4.80) 0.071 0.2
aCREA 33 (28, 37) 30 (27, 33) 0.10 0.2
aUA 222 (209, 245) 226 (202, 261) >0.9 >0.9
aVIT_AKTB12 118 (94, 133) 143 (102, 228) 0.060 0.2
aHCY 8.50 (8.00, 10.00) 7.65 (6.30, 8.60) 0.043 0.2
    Unknown 0 3

aMMA 204 (169, 239) 155 (136, 202) 0.013 0.11
aVIT_D 70 (59, 87) 94 (77, 104) 0.022 0.12
aFOLAT 11.1 (9.2, 13.8) 17.2 (13.1, 21.0) <0.001 0.016
aIGF1 156 (107, 192) 105 (81, 137) 0.051 0.2
    Unknown 1 1

aAL_child 4 (18%) 2 (9.5%) 0.7 0.8
aSUP_VEG1 0 (0%) 2 (9.5%) 0.2 0.4
aSup_B12 0 (0%) 16 (76%) <0.001 <0.001
aSUP_FOL 1 (4.5%) 1 (4.8%) >0.9 >0.9
aSUP_vitA 0 (0%) 1 (4.8%) 0.5 0.7
aSUP_vitB1 0 (0%) 2 (9.5%) 0.2 0.4
aSUP_vit.B5 0 (0%) 2 (9.5%) 0.2 0.4
aSUP_D 9 (41%) 15 (71%) 0.044 0.2
aSUP_Mg 0 (0%) 3 (14%) 0.11 0.3
aSUP_Zn 0 (0%) 4 (19%) 0.048 0.2
aSUP_Se 0 (0%) 2 (9.5%) 0.2 0.4
aSUP_Ca 0 (0%) 2 (9.5%) 0.2 0.4
aSUP_Fe 1 (4.5%) 2 (9.5%) 0.6 0.8
aSUP_Iod 0 (0%) 4 (19%) 0.048 0.2
aSUP_Ѡ3 3 (14%) 16 (76%) <0.001 0.001
aSUP_CHLO



    0 22 (100%) 21 (100%)

aSUP_ALG



    0 22 (100%) 21 (100%)

aSUP_GB



    0 22 (100%) 21 (100%)

aSUP_FORT



    0 22 (100%) 21 (100%)

aSUP_PROB 1 (4.5%) 0 (0%) >0.9 >0.9
aSUP_OTH 9 (41%) 2 (9.5%) 0.018 0.12
aUr_Krea 5.3 (4.8, 8.5) 4.1 (1.6, 9.0) 0.2 0.4
aUr_Ca 1.41 (0.51, 2.39) 0.61 (0.28, 1.26) 0.11 0.3
aCa_per_Krea 0.26 (0.12, 0.46) 0.21 (0.08, 0.38) 0.3 0.4
aI_per_Krea 259 (189, 440) 339 (107, 404) 0.6 0.8
    Unknown 2 3

aP_per_Krea 3.31 (2.59, 5.41) 1.66 (1.42, 3.00) <0.001 0.002
aBiW 3,290 (3,018, 3,600) 3,425 (2,785, 3,720) >0.9 >0.9
    Unknown 0 1

aBREAKS 1 (4.5%) 3 (14%) 0.3 0.5
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.2.4 VG vs VN

Open code

DatChar_child_old_VG_VN <- run(
  dat_child_old_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'VG' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    modify_caption("VG vs VN, only children >3 year old included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
   path = 'gitignore/run/DatChar_child_old_VG_VN', reuse=TRUE)

DatChar_child_old_VG_VN
VG vs VN, only children >3 year old included

Characteristic

VG
N = 22

1

VN
N = 21

1

p-value

2

q-value

3
aAGE 5.28 (4.40, 6.89) 4.67 (3.57, 5.78) 0.063 0.4
SEX

0.7 >0.9
    F 9 (41%) 10 (48%)

    M 13 (59%) 11 (52%)

aBreastFeed_full 7.00 (6.00, 8.00) 6.00 (6.00, 6.00) 0.064 0.4
aBreastFeed_total 18 (15, 22) 18 (12, 35) 0.8 >0.9
    Unknown 0 2

aBreastFeed_full_stopped



    1 22 (100%) 21 (100%)

aBreastFeed_total_stopped 22 (100%) 18 (95%) 0.5 0.9
    Unknown 0 2

dev_delay 1 (4.5%) 1 (4.8%) >0.9 >0.9
aMASS_Perc 62 (27, 65) 40 (27, 67) 0.5 0.9
aHEIGHT_Perc 57 (37, 74) 42 (11, 61) 0.2 0.6
aBMI_PERC 46 (31, 58) 43 (21, 68) 0.9 >0.9
aM_per_H_PERC 47 (32, 58) 43 (17, 70) 0.7 >0.9
aGLY 4.26 (3.79, 4.72) 4.33 (4.19, 4.56) 0.8 >0.9
    Unknown 1 0

aTC 3.70 (3.19, 4.32) 3.42 (3.20, 3.87) 0.3 0.7
    Unknown 1 0

aHDL 1.31 (1.10, 1.43) 1.23 (1.12, 1.49) >0.9 >0.9
    Unknown 1 0

aLDL 2.11 (1.79, 2.49) 1.71 (1.56, 2.03) 0.029 0.4
    Unknown 1 0

aTG 0.62 (0.56, 0.92) 0.93 (0.65, 1.10) 0.10 0.5
    Unknown 1 0

aCa 2.50 (2.45, 2.58) 2.49 (2.47, 2.52) >0.9 >0.9
    Unknown 1 0

aP 1.54 (1.44, 1.63) 1.58 (1.43, 1.67) 0.8 >0.9
    Unknown 1 0

aMg 0.83 (0.80, 0.87) 0.86 (0.81, 0.89) 0.3 0.7
    Unknown 1 0

aSe 0.68 (0.60, 0.91) 0.77 (0.59, 0.86) 0.9 >0.9
    Unknown 1 0

aZn 11.70 (10.90, 13.30) 10.60 (9.60, 13.10) 0.2 0.6
    Unknown 1 0

aFE 13 (12, 19) 17 (11, 19) 0.5 >0.9
    Unknown 1 0

aVKFE 73 (63, 77) 67 (62, 74) 0.2 0.7
    Unknown 1 0

aFERR 19 (15, 26) 16 (12, 22) 0.076 0.4
    Unknown 1 0

aTRF 2.88 (2.51, 3.05) 2.66 (2.47, 2.95) 0.2 0.7
    Unknown 1 0

aSATTRF 20 (14, 27) 25 (17, 30) 0.4 0.9
    Unknown 1 0

aTRFINDEX 1.28 (1.03, 1.39) 1.20 (1.14, 1.43) 0.3 0.8
    Unknown 1 0

aSTRF 1.60 (1.40, 1.67) 1.54 (1.36, 1.66) 0.5 0.9
    Unknown 1 0

aHGB 129 (123, 135) 124 (117, 128) 0.036 0.4
    Unknown 1 0

aMCV 78.70 (76.90, 80.30) 82.70 (80.10, 84.20) <0.001 0.043
    Unknown 1 0

aPTH 2.80 (1.90, 3.30) 2.70 (2.30, 3.50) 0.6 >0.9
    Unknown 1 0

aCros 1.24 (1.12, 1.41) 1.25 (1.14, 1.41) >0.9 >0.9
    Unknown 1 0

aP1NP 492 (442, 649) 572 (519, 644) 0.2 0.6
    Unknown 1 0

aUI 126 (85, 182) 110 (75, 160) 0.6 >0.9
    Unknown 4 3

aUREA 4.70 (4.30, 5.80) 4.10 (3.90, 4.80) 0.045 0.4
    Unknown 1 0

aCREA 31 (27, 36) 30 (27, 33) 0.2 0.6
    Unknown 1 0

aUA 236 (221, 249) 226 (202, 261) 0.5 0.9
    Unknown 1 0

aVIT_AKTB12 95 (81, 135) 143 (102, 228) 0.038 0.4
    Unknown 1 0

aHCY 7.95 (6.90, 10.00) 7.65 (6.30, 8.60) 0.5 0.9
    Unknown 6 3

aMMA 170 (144, 257) 155 (136, 202) 0.3 0.7
    Unknown 1 0

aVIT_D 85 (70, 97) 94 (77, 104) 0.4 0.8
    Unknown 1 0

aFOLAT 17.5 (15.0, 18.8) 17.2 (13.1, 21.0) 0.8 >0.9
    Unknown 1 0

aIGF1 154 (118, 183) 105 (81, 137) 0.039 0.4
    Unknown 2 1

aAL_child 4 (18%) 2 (9.5%) 0.7 >0.9
aSUP_VEG1 4 (18%) 2 (9.5%) 0.7 >0.9
aSup_B12 18 (82%) 16 (76%) 0.7 >0.9
aSUP_FOL 1 (4.5%) 1 (4.8%) >0.9 >0.9
aSUP_vitA 0 (0%) 1 (4.8%) 0.5 0.9
aSUP_vitB1 2 (9.1%) 2 (9.5%) >0.9 >0.9
aSUP_vit.B5 2 (9.1%) 2 (9.5%) >0.9 >0.9
aSUP_D 19 (86%) 15 (71%) 0.3 0.7
aSUP_Mg 4 (18%) 3 (14%) >0.9 >0.9
aSUP_Zn 0 (0%) 4 (19%) 0.048 0.4
aSUP_Se 0 (0%) 2 (9.5%) 0.2 0.7
aSUP_Ca 2 (9.1%) 2 (9.5%) >0.9 >0.9
aSUP_Fe 3 (14%) 2 (9.5%) >0.9 >0.9
aSUP_Iod 3 (14%) 4 (19%) 0.7 >0.9
aSUP_Ѡ3 11 (50%) 16 (76%) 0.076 0.4
aSUP_CHLO 3 (14%) 0 (0%) 0.2 0.7
aSUP_ALG



    0 22 (100%) 21 (100%)

aSUP_GB 1 (4.5%) 0 (0%) >0.9 >0.9
aSUP_FORT 1 (4.5%) 0 (0%) >0.9 >0.9
aSUP_PROB 4 (18%) 0 (0%) 0.11 0.5
aSUP_OTH 5 (23%) 2 (9.5%) 0.4 0.9
aUr_Krea 5.1 (3.4, 6.9) 4.1 (1.6, 9.0) 0.4 0.9
aUr_Ca 1.76 (0.37, 3.47) 0.61 (0.28, 1.26) 0.12 0.5
aCa_per_Krea 0.33 (0.11, 0.78) 0.21 (0.08, 0.38) 0.2 0.6
aI_per_Krea 169 (136, 366) 339 (107, 404) >0.9 >0.9
    Unknown 4 3

aP_per_Krea 3.36 (1.56, 4.83) 1.66 (1.42, 3.00) 0.024 0.4
aBiW 3,325 (2,990, 3,680) 3,425 (2,785, 3,720) >0.9 >0.9
    Unknown 0 1

aBREAKS 0 (0%) 3 (14%) 0.11 0.5
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.3 Children <3 y.o. characteristics table

2.2.3.1 Overall

Open code

DatChar_child_young <- run(
  dat_child_young_tosum %>%
    select(-FAM, -ID) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    
    modify_caption("Supplementary Table 3. Children characteristics according to food preferences, with only children <3 year old included") %>% 
    add_p() %>% 
    add_q(),
  path = 'gitignore/run/DatChar_child_young', reuse=TRUE)

DatChar_child_young
Supplementary Table 3. Children characteristics according to food preferences, with only children <3 year old included

Characteristic

OM
N = 22

1

VG
N = 15

1

VN
N = 40

1

p-value

2

q-value

3
aAGE 1.50 (1.01, 2.26) 1.53 (0.72, 2.12) 1.35 (0.87, 2.12) 0.9 >0.9
SEX


0.8 >0.9
    F 11 (50%) 9 (60%) 21 (53%)

    M 11 (50%) 6 (40%) 19 (48%)

aBreastFeed_full 6.00 (6.00, 6.00) 6.00 (5.50, 6.00) 6.00 (5.00, 6.00) 0.4 0.8
aBreastFeed_total 10 (9, 14) 18 (9, 21) 12 (8, 17) 0.5 0.8
    Unknown 2 2 4

aBreastFeed_full_stopped 20 (91%) 11 (73%) 35 (88%) 0.3 0.8
aBreastFeed_total_stopped 12 (60%) 2 (15%) 15 (42%) 0.040 0.2
    Unknown 2 2 4

dev_delay




    0 22 (100%) 15 (100%) 40 (100%)

aMASS_Perc 63 (33, 79) 48 (30, 74) 34 (14, 68) 0.2 0.7
aHEIGHT_Perc 43 (33, 75) 51 (28, 68) 38 (14, 64) 0.3 0.8
aBMI_PERC 55 (45, 79) 56 (42, 77) 56 (35, 70) 0.7 >0.9
aM_per_H_PERC 58 (45, 79) 61 (39, 70) 53 (39, 66) 0.5 0.9
aGLY 4.48 (4.29, 4.62) 4.66 (4.31, 4.85) 4.42 (4.21, 4.65) 0.4 0.8
    Unknown 1 2 6

aTC 3.97 (3.07, 4.40) 3.89 (3.43, 4.30) 3.90 (3.43, 4.03) 0.8 >0.9
    Unknown 1 2 6

aHDL 1.10 (0.84, 1.38) 1.06 (1.00, 1.27) 1.25 (0.94, 1.36) 0.7 >0.9
    Unknown 1 2 6

aLDL 2.00 (1.50, 2.79) 2.30 (1.92, 2.62) 1.98 (1.65, 2.24) 0.2 0.7
    Unknown 1 2 6

aTG 1.14 (0.93, 1.48) 0.80 (0.67, 1.22) 1.09 (0.77, 1.47) 0.4 0.8
    Unknown 1 2 6

aCa 2.65 (2.54, 2.72) 2.64 (2.60, 2.72) 2.63 (2.53, 2.68) 0.8 >0.9
    Unknown 1 2 5

aP 1.70 (1.66, 1.80) 1.79 (1.69, 1.83) 1.72 (1.62, 1.83) 0.7 >0.9
    Unknown 1 2 5

aMg 0.87 (0.82, 0.90) 0.89 (0.85, 0.97) 0.88 (0.84, 0.92) 0.4 0.8
    Unknown 1 2 5

aSe 0.75 (0.68, 0.95) 0.73 (0.63, 0.90) 0.75 (0.53, 0.94) >0.9 >0.9
    Unknown 1 3 6

aZn 11.70 (10.70, 13.40) 10.80 (10.25, 11.40) 10.65 (9.80, 11.80) 0.2 0.7
    Unknown 1 3 6

aFE 9.6 (8.3, 14.6) 10.2 (5.4, 12.5) 11.1 (7.6, 17.1) 0.4 0.8
    Unknown 1 2 5

aVKFE 75 (72, 79) 73 (69, 75) 71 (66, 77) 0.3 0.8
    Unknown 1 2 6

aFERR 15 (9, 21) 11 (9, 14) 12 (9, 16) 0.4 0.8
    Unknown 1 2 5

aTRF 2.97 (2.85, 3.15) 2.90 (2.73, 2.99) 2.82 (2.60, 3.04) 0.3 0.8
    Unknown 1 2 5

aSATTRF 13 (12, 18) 14 (7, 18) 16 (11, 25) 0.4 0.8
    Unknown 1 2 5

aTRFINDEX 1.64 (1.33, 2.06) 1.58 (1.43, 1.79) 1.54 (1.32, 1.96) >0.9 >0.9
    Unknown 1 2 5

aSTRF 1.79 (1.71, 1.94) 1.65 (1.38, 1.88) 1.72 (1.51, 1.99) 0.4 0.8
    Unknown 1 2 5

aHGB 116 (112, 123) 117 (108, 122) 119 (115, 121) 0.7 >0.9
    Unknown 3 3 7

aMCV 76.8 (70.9, 78.8) 77.6 (75.1, 80.7) 79.7 (76.8, 80.8) 0.021 0.2
    Unknown 3 3 7

aPTH 2.50 (1.40, 3.80) 2.60 (1.75, 3.30) 3.20 (2.10, 4.00) 0.2 0.7
    Unknown 1 3 5

aCros 1.15 (0.99, 1.28) 1.25 (0.91, 1.46) 1.22 (1.13, 1.43) 0.4 0.8
    Unknown 1 3 6

aP1NP 920 (585, 1,201) 986 (843, 1,201) 988 (669, 1,201) 0.8 >0.9
    Unknown 1 3 6

aUI 169 (127, 232) 190 (134, 271) 98 (65, 198) 0.036 0.2
    Unknown 10 2 9

aUREA 4.30 (3.30, 5.60) 3.20 (2.70, 3.90) 3.60 (2.70, 4.40) 0.10 0.4
    Unknown 1 2 5

aCREA 21 (19, 23) 20 (19, 23) 19 (18, 23) 0.4 0.8
    Unknown 1 2 5

aUA 222 (191, 267) 223 (175, 241) 218 (184, 255) 0.8 >0.9
    Unknown 1 2 5

aVIT_AKTB12 84 (72, 93) 59 (44, 90) 138 (89, 187) <0.001 0.005
    Unknown 1 3 6

aHCY 9.3 (7.4, 12.0) 9.0 (6.9, 12.6) 7.1 (6.0, 8.9) 0.004 0.050
    Unknown 1 5 8

aMMA 280 (248, 386) 305 (188, 638) 152 (124, 190) <0.001 <0.001
    Unknown 5 3 10

aVIT_D 82 (67, 98) 98 (81, 129) 104 (81, 119) 0.030 0.2
    Unknown 1 2 5

aFOLAT 14.4 (12.7, 17.2) 18.2 (16.9, 21.1) 18.1 (15.6, 22.6) 0.014 0.14
    Unknown 1 2 6

aIGF1 70 (48, 107) 63 (50, 84) 64 (45, 89) >0.9 >0.9
    Unknown 1 4 11

aAL_child 5 (23%) 1 (6.7%) 1 (2.5%) 0.025 0.2
aSUP_VEG1 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSup_B12 0 (0%) 7 (47%) 30 (75%) <0.001 <0.001
aSUP_FOL 1 (4.5%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vitA 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vitB1 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vit.B5 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_D 12 (55%) 14 (93%) 33 (83%) 0.015 0.14
aSUP_Mg




    0 22 (100%) 15 (100%) 40 (100%)

aSUP_Zn 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Se 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Ca 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Fe 1 (4.5%) 1 (6.7%) 2 (5.0%) >0.9 >0.9
aSUP_Iod 0 (0%) 0 (0%) 2 (5.0%) 0.7 >0.9
aSUP_Ѡ3 2 (9.1%) 2 (13%) 23 (58%) <0.001 0.002
aSUP_CHLO




    0 22 (100%) 15 (100%) 40 (100%)

aSUP_ALG




    0 22 (100%) 15 (100%) 40 (100%)

aSUP_GB




    0 22 (100%) 15 (100%) 40 (100%)

aSUP_FORT




    0 22 (100%) 15 (100%) 40 (100%)

aSUP_PROB 2 (9.1%) 2 (13%) 0 (0%) 0.062 0.3
aSUP_OTH 5 (23%) 4 (27%) 5 (13%) 0.4 0.8
aUr_Krea 3.20 (2.00, 4.90) 2.75 (1.40, 3.80) 1.80 (1.05, 4.35) 0.5 0.8
    Unknown 9 1 8

aUr_Ca 0.63 (0.49, 1.94) 1.07 (0.58, 2.61) 1.02 (0.26, 2.06) 0.7 >0.9
    Unknown 9 1 8

aCa_per_Krea 0.12 (0.11, 0.78) 0.49 (0.13, 0.88) 0.41 (0.22, 0.78) 0.5 0.8
    Unknown 9 1 8

aI_per_Krea 614 (338, 788) 563 (325, 1,089) 402 (263, 786) 0.4 0.8
    Unknown 10 2 10

aP_per_Krea 6.41 (3.10, 7.35) 3.53 (2.17, 4.16) 3.12 (1.66, 4.61) 0.022 0.2
    Unknown 9 1 8

aBiW 3,430 (3,080, 3,750) 3,400 (3,200, 3,600) 3,500 (3,050, 3,650) >0.9 >0.9
    Unknown 0 0 1

aBREAKS 0 (0%) 0 (0%) 1 (2.5%) >0.9 >0.9
1

Median (Q1, Q3); n (%)

2

Kruskal-Wallis rank sum test; Pearson’s Chi-squared test; Fisher’s exact test

3

False discovery rate correction for multiple testing

Open code

DatChar_child_young_df <- DatChar_child_young$table_body %>%
  as_tibble()

2.2.3.2 OM vs VG

Open code

DatChar_child_young_OM_VG <- run(
  dat_child_young_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'OM' | GRP == 'VG') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    
    modify_caption("OM vs VG, with only children <3 year old included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
  path = 'gitignore/run/DatChar_child_young_OM_VG', reuse=TRUE)

DatChar_child_young_OM_VG
OM vs VG, with only children <3 year old included

Characteristic

OM
N = 22

1

VG
N = 15

1

p-value

2

q-value

3
aAGE 1.50 (1.01, 2.26) 1.53 (0.72, 2.12) 0.8 >0.9
SEX

0.5 >0.9
    F 11 (50%) 9 (60%)

    M 11 (50%) 6 (40%)

aBreastFeed_full 6.00 (6.00, 6.00) 6.00 (5.50, 6.00) >0.9 >0.9
aBreastFeed_total 10 (9, 14) 18 (9, 21) 0.3 0.9
    Unknown 2 2

aBreastFeed_full_stopped 20 (91%) 11 (73%) 0.2 0.9
aBreastFeed_total_stopped 12 (60%) 2 (15%) 0.011 0.2
    Unknown 2 2

dev_delay



    0 22 (100%) 15 (100%)

aMASS_Perc 63 (33, 79) 48 (30, 74) 0.6 >0.9
aHEIGHT_Perc 43 (33, 75) 51 (28, 68) 0.9 >0.9
aBMI_PERC 55 (45, 79) 56 (42, 77) 0.9 >0.9
aM_per_H_PERC 58 (45, 79) 61 (39, 70) 0.7 >0.9
aGLY 4.48 (4.29, 4.62) 4.66 (4.31, 4.85) 0.2 0.9
    Unknown 1 2

aTC 3.97 (3.07, 4.40) 3.89 (3.43, 4.30) 0.9 >0.9
    Unknown 1 2

aHDL 1.10 (0.84, 1.38) 1.06 (1.00, 1.27) >0.9 >0.9
    Unknown 1 2

aLDL 2.00 (1.50, 2.79) 2.30 (1.92, 2.62) 0.4 >0.9
    Unknown 1 2

aTG 1.14 (0.93, 1.48) 0.80 (0.67, 1.22) 0.2 0.9
    Unknown 1 2

aCa 2.65 (2.54, 2.72) 2.64 (2.60, 2.72) 0.8 >0.9
    Unknown 1 2

aP 1.70 (1.66, 1.80) 1.79 (1.69, 1.83) 0.5 >0.9
    Unknown 1 2

aMg 0.87 (0.82, 0.90) 0.89 (0.85, 0.97) 0.3 0.9
    Unknown 1 2

aSe 0.75 (0.68, 0.95) 0.73 (0.63, 0.90) 0.8 >0.9
    Unknown 1 3

aZn 11.70 (10.70, 13.40) 10.80 (10.25, 11.40) 0.13 0.9
    Unknown 1 3

aFE 10 (8, 15) 10 (5, 13) 0.7 >0.9
    Unknown 1 2

aVKFE 75 (72, 79) 73 (69, 75) 0.3 0.9
    Unknown 1 2

aFERR 15 (9, 21) 11 (9, 14) 0.3 0.9
    Unknown 1 2

aTRF 2.97 (2.85, 3.15) 2.90 (2.73, 2.99) 0.3 0.9
    Unknown 1 2

aSATTRF 13 (12, 18) 14 (7, 18) 0.8 >0.9
    Unknown 1 2

aTRFINDEX 1.64 (1.33, 2.06) 1.58 (1.43, 1.79) >0.9 >0.9
    Unknown 1 2

aSTRF 1.79 (1.71, 1.94) 1.65 (1.38, 1.88) 0.2 0.9
    Unknown 1 2

aHGB 116 (112, 123) 117 (108, 122) 0.8 >0.9
    Unknown 3 3

aMCV 76.8 (70.9, 78.8) 77.6 (75.1, 80.7) 0.2 0.9
    Unknown 3 3

aPTH 2.50 (1.40, 3.80) 2.60 (1.75, 3.30) >0.9 >0.9
    Unknown 1 3

aCros 1.15 (0.99, 1.28) 1.25 (0.91, 1.46) 0.7 >0.9
    Unknown 1 3

aP1NP 920 (585, 1,201) 986 (843, 1,201) 0.7 >0.9
    Unknown 1 3

aUI 169 (127, 232) 190 (134, 271) 0.7 >0.9
    Unknown 10 2

aUREA 4.30 (3.30, 5.60) 3.20 (2.70, 3.90) 0.063 0.7
    Unknown 1 2

aCREA 21 (19, 23) 20 (19, 23) 0.5 >0.9
    Unknown 1 2

aUA 222 (191, 267) 223 (175, 241) 0.6 >0.9
    Unknown 1 2

aVIT_AKTB12 84 (72, 93) 59 (44, 90) 0.2 0.9
    Unknown 1 3

aHCY 9.30 (7.40, 12.00) 9.00 (6.90, 12.60) 0.9 >0.9
    Unknown 1 5

aMMA 280 (248, 386) 305 (188, 638) 0.9 >0.9
    Unknown 5 3

aVIT_D 82 (67, 98) 98 (81, 129) 0.11 0.9
    Unknown 1 2

aFOLAT 14.4 (12.7, 17.2) 18.2 (16.9, 21.1) 0.017 0.2
    Unknown 1 2

aIGF1 70 (48, 107) 63 (50, 84) 0.7 >0.9
    Unknown 1 4

aAL_child 5 (23%) 1 (6.7%) 0.4 >0.9
aSUP_VEG1



    0 22 (100%) 15 (100%)

aSup_B12 0 (0%) 7 (47%) <0.001 0.035
aSUP_FOL 1 (4.5%) 0 (0%) >0.9 >0.9
aSUP_vitA



    0 22 (100%) 15 (100%)

aSUP_vitB1



    0 22 (100%) 15 (100%)

aSUP_vit.B5



    0 22 (100%) 15 (100%)

aSUP_D 12 (55%) 14 (93%) 0.014 0.2
aSUP_Mg



    0 22 (100%) 15 (100%)

aSUP_Zn



    0 22 (100%) 15 (100%)

aSUP_Se



    0 22 (100%) 15 (100%)

aSUP_Ca



    0 22 (100%) 15 (100%)

aSUP_Fe 1 (4.5%) 1 (6.7%) >0.9 >0.9
aSUP_Iod



    0 22 (100%) 15 (100%)

aSUP_Ѡ3 2 (9.1%) 2 (13%) >0.9 >0.9
aSUP_CHLO



    0 22 (100%) 15 (100%)

aSUP_ALG



    0 22 (100%) 15 (100%)

aSUP_GB



    0 22 (100%) 15 (100%)

aSUP_FORT



    0 22 (100%) 15 (100%)

aSUP_PROB 2 (9.1%) 2 (13%) >0.9 >0.9
aSUP_OTH 5 (23%) 4 (27%) >0.9 >0.9
aUr_Krea 3.20 (2.00, 4.90) 2.75 (1.40, 3.80) 0.7 >0.9
    Unknown 9 1

aUr_Ca 0.63 (0.49, 1.94) 1.07 (0.58, 2.61) 0.5 >0.9
    Unknown 9 1

aCa_per_Krea 0.12 (0.11, 0.78) 0.49 (0.13, 0.88) 0.2 0.9
    Unknown 9 1

aI_per_Krea 614 (338, 788) 563 (325, 1,089) >0.9 >0.9
    Unknown 10 2

aP_per_Krea 6.41 (3.10, 7.35) 3.53 (2.17, 4.16) 0.076 0.7
    Unknown 9 1

aBiW 3,430 (3,080, 3,750) 3,400 (3,200, 3,600) >0.9 >0.9
aBREAKS



    0 22 (100%) 15 (100%)

1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.3.3 OM vs VN

Open code

DatChar_child_young_OM_VN <- run(
  dat_child_young_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'OM' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    
    modify_caption("OM vs VN, with only children <3 year old included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
  path = 'gitignore/run/DatChar_child_young_OM_VN', reuse=TRUE)

DatChar_child_young_OM_VN
OM vs VN, with only children <3 year old included

Characteristic

OM
N = 22

1

VN
N = 40

1

p-value

2

q-value

3
aAGE 1.50 (1.01, 2.26) 1.35 (0.87, 2.12) 0.7 >0.9
SEX

0.9 >0.9
    F 11 (50%) 21 (53%)

    M 11 (50%) 19 (48%)

aBreastFeed_full 6.00 (6.00, 6.00) 6.00 (5.00, 6.00) 0.2 0.6
aBreastFeed_total 10 (9, 14) 12 (8, 17) 0.6 >0.9
    Unknown 2 4

aBreastFeed_full_stopped 20 (91%) 35 (88%) >0.9 >0.9
aBreastFeed_total_stopped 12 (60%) 15 (42%) 0.2 0.5
    Unknown 2 4

dev_delay



    0 22 (100%) 40 (100%)

aMASS_Perc 63 (33, 79) 34 (14, 68) 0.11 0.5
aHEIGHT_Perc 43 (33, 75) 38 (14, 64) 0.2 0.5
aBMI_PERC 55 (45, 79) 56 (35, 70) 0.4 0.8
aM_per_H_PERC 58 (45, 79) 53 (39, 66) 0.3 0.6
aGLY 4.48 (4.29, 4.62) 4.42 (4.21, 4.65) >0.9 >0.9
    Unknown 1 6

aTC 3.97 (3.07, 4.40) 3.90 (3.43, 4.03) 0.5 0.9
    Unknown 1 6

aHDL 1.10 (0.84, 1.38) 1.25 (0.94, 1.36) 0.5 0.9
    Unknown 1 6

aLDL 2.00 (1.50, 2.79) 1.98 (1.65, 2.24) 0.6 >0.9
    Unknown 1 6

aTG 1.14 (0.93, 1.48) 1.09 (0.77, 1.47) 0.7 >0.9
    Unknown 1 6

aCa 2.65 (2.54, 2.72) 2.63 (2.53, 2.68) 0.7 >0.9
    Unknown 1 5

aP 1.70 (1.66, 1.80) 1.72 (1.62, 1.83) 0.8 >0.9
    Unknown 1 5

aMg 0.87 (0.82, 0.90) 0.88 (0.84, 0.92) 0.3 0.6
    Unknown 1 5

aSe 0.75 (0.68, 0.95) 0.75 (0.53, 0.94) 0.9 >0.9
    Unknown 1 6

aZn 11.70 (10.70, 13.40) 10.65 (9.80, 11.80) 0.083 0.4
    Unknown 1 6

aFE 9.6 (8.3, 14.6) 11.1 (7.6, 17.1) 0.3 0.6
    Unknown 1 5

aVKFE 75 (72, 79) 71 (66, 77) 0.12 0.5
    Unknown 1 6

aFERR 15 (9, 21) 12 (9, 16) 0.3 0.6
    Unknown 1 5

aTRF 2.97 (2.85, 3.15) 2.82 (2.60, 3.04) 0.12 0.5
    Unknown 1 5

aSATTRF 13 (12, 18) 16 (11, 25) 0.3 0.6
    Unknown 1 5

aTRFINDEX 1.64 (1.33, 2.06) 1.54 (1.32, 1.96) 0.9 >0.9
    Unknown 1 5

aSTRF 1.79 (1.71, 1.94) 1.72 (1.51, 1.99) 0.4 0.7
    Unknown 1 5

aHGB 116 (112, 123) 119 (115, 121) 0.5 0.9
    Unknown 3 7

aMCV 76.8 (70.9, 78.8) 79.7 (76.8, 80.8) 0.005 0.056
    Unknown 3 7

aPTH 2.50 (1.40, 3.80) 3.20 (2.10, 4.00) 0.2 0.5
    Unknown 1 5

aCros 1.15 (0.99, 1.28) 1.22 (1.13, 1.43) 0.14 0.5
    Unknown 1 6

aP1NP 920 (585, 1,201) 988 (669, 1,201) 0.6 >0.9
    Unknown 1 6

aUI 169 (127, 232) 98 (65, 198) 0.025 0.14
    Unknown 10 9

aUREA 4.30 (3.30, 5.60) 3.60 (2.70, 4.40) 0.092 0.4
    Unknown 1 5

aCREA 21 (19, 23) 19 (18, 23) 0.2 0.5
    Unknown 1 5

aUA 222 (191, 267) 218 (184, 255) 0.7 >0.9
    Unknown 1 5

aVIT_AKTB12 84 (72, 93) 138 (89, 187) 0.001 0.018
    Unknown 1 6

aHCY 9.30 (7.40, 12.00) 7.10 (6.00, 8.90) 0.002 0.023
    Unknown 1 8

aMMA 280 (248, 386) 152 (124, 190) <0.001 <0.001
    Unknown 5 10

aVIT_D 82 (67, 98) 104 (81, 119) 0.008 0.065
    Unknown 1 5

aFOLAT 14.4 (12.7, 17.2) 18.1 (15.6, 22.6) 0.009 0.065
    Unknown 1 6

aIGF1 70 (48, 107) 64 (45, 89) 0.8 >0.9
    Unknown 1 11

aAL_child 5 (23%) 1 (2.5%) 0.018 0.11
aSUP_VEG1 0 (0%) 1 (2.5%) >0.9 >0.9
aSup_B12 0 (0%) 30 (75%) <0.001 <0.001
aSUP_FOL 1 (4.5%) 1 (2.5%) >0.9 >0.9
aSUP_vitA 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vitB1 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vit.B5 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_D 12 (55%) 33 (83%) 0.018 0.11
aSUP_Mg



    0 22 (100%) 40 (100%)

aSUP_Zn 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Se 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Ca 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Fe 1 (4.5%) 2 (5.0%) >0.9 >0.9
aSUP_Iod 0 (0%) 2 (5.0%) 0.5 0.9
aSUP_Ѡ3 2 (9.1%) 23 (58%) <0.001 0.004
aSUP_CHLO



    0 22 (100%) 40 (100%)

aSUP_ALG



    0 22 (100%) 40 (100%)

aSUP_GB



    0 22 (100%) 40 (100%)

aSUP_FORT



    0 22 (100%) 40 (100%)

aSUP_PROB 2 (9.1%) 0 (0%) 0.12 0.5
aSUP_OTH 5 (23%) 5 (13%) 0.3 0.6
aUr_Krea 3.20 (2.00, 4.90) 1.80 (1.05, 4.35) 0.2 0.6
    Unknown 9 8

aUr_Ca 0.63 (0.49, 1.94) 1.02 (0.26, 2.06) 0.9 >0.9
    Unknown 9 8

aCa_per_Krea 0.12 (0.11, 0.78) 0.41 (0.22, 0.78) 0.3 0.6
    Unknown 9 8

aI_per_Krea 614 (338, 788) 402 (263, 786) 0.3 0.6
    Unknown 10 10

aP_per_Krea 6.41 (3.10, 7.35) 3.12 (1.66, 4.61) 0.006 0.057
    Unknown 9 8

aBiW 3,430 (3,080, 3,750) 3,500 (3,050, 3,650) 0.8 >0.9
    Unknown 0 1

aBREAKS 0 (0%) 1 (2.5%) >0.9 >0.9
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.3.4 VG vs VN

Open code

DatChar_child_young_VG_VN <- run(
  dat_child_young_tosum %>%
    select(-FAM, -ID) %>%
    filter(GRP == 'VG' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(
      by = 'GRP',
      type = list(
        aBreastFeed_full ~ 'continuous',
        aBreastFeed_total ~ 'continuous')) %>%
    
    modify_caption("VG vs VN, with only children <3 year old included") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
  path = 'gitignore/run/DatChar_child_young_VG_VN', reuse=TRUE)

DatChar_child_young_VG_VN
VG vs VN, with only children <3 year old included

Characteristic

VG
N = 15

1

VN
N = 40

1

p-value

2

q-value

3
aAGE 1.53 (0.72, 2.12) 1.35 (0.87, 2.12) 0.9 >0.9
SEX

0.6 >0.9
    F 9 (60%) 21 (53%)

    M 6 (40%) 19 (48%)

aBreastFeed_full 6.00 (5.50, 6.00) 6.00 (5.00, 6.00) 0.4 >0.9
aBreastFeed_total 18 (9, 21) 12 (8, 17) 0.3 >0.9
    Unknown 2 4

aBreastFeed_full_stopped 11 (73%) 35 (88%) 0.2 >0.9
aBreastFeed_total_stopped 2 (15%) 15 (42%) 0.11 0.7
    Unknown 2 4

dev_delay



    0 15 (100%) 40 (100%)

aMASS_Perc 48 (30, 74) 34 (14, 68) 0.3 >0.9
aHEIGHT_Perc 51 (28, 68) 38 (14, 64) 0.3 >0.9
aBMI_PERC 56 (42, 77) 56 (35, 70) 0.6 >0.9
aM_per_H_PERC 61 (39, 70) 53 (39, 66) 0.5 >0.9
aGLY 4.66 (4.31, 4.85) 4.42 (4.21, 4.65) 0.2 >0.9
    Unknown 2 6

aTC 3.89 (3.43, 4.30) 3.90 (3.43, 4.03) 0.7 >0.9
    Unknown 2 6

aHDL 1.06 (1.00, 1.27) 1.25 (0.94, 1.36) 0.5 >0.9
    Unknown 2 6

aLDL 2.30 (1.92, 2.62) 1.98 (1.65, 2.24) 0.043 0.6
    Unknown 2 6

aTG 0.80 (0.67, 1.22) 1.09 (0.77, 1.47) 0.2 >0.9
    Unknown 2 6

aCa 2.64 (2.60, 2.72) 2.63 (2.53, 2.68) 0.5 >0.9
    Unknown 2 5

aP 1.79 (1.69, 1.83) 1.72 (1.62, 1.83) 0.4 >0.9
    Unknown 2 5

aMg 0.89 (0.85, 0.97) 0.88 (0.84, 0.92) 0.7 >0.9
    Unknown 2 5

aSe 0.73 (0.63, 0.90) 0.75 (0.53, 0.94) 0.9 >0.9
    Unknown 3 6

aZn 10.80 (10.25, 11.40) 10.65 (9.80, 11.80) >0.9 >0.9
    Unknown 3 6

aFE 10.2 (5.4, 12.5) 11.1 (7.6, 17.1) 0.3 >0.9
    Unknown 2 5

aVKFE 73 (69, 75) 71 (66, 77) 0.8 >0.9
    Unknown 2 6

aFERR 11 (9, 14) 12 (9, 16) 0.6 >0.9
    Unknown 2 5

aTRF 2.90 (2.73, 2.99) 2.82 (2.60, 3.04) 0.7 >0.9
    Unknown 2 5

aSATTRF 14 (7, 18) 16 (11, 25) 0.3 >0.9
    Unknown 2 5

aTRFINDEX 1.58 (1.43, 1.79) 1.54 (1.32, 1.96) >0.9 >0.9
    Unknown 2 5

aSTRF 1.65 (1.38, 1.88) 1.72 (1.51, 1.99) 0.4 >0.9
    Unknown 2 5

aHGB 117 (108, 122) 119 (115, 121) 0.6 >0.9
    Unknown 3 7

aMCV 77.60 (75.10, 80.70) 79.70 (76.80, 80.80) 0.4 >0.9
    Unknown 3 7

aPTH 2.60 (1.75, 3.30) 3.20 (2.10, 4.00) 0.11 0.7
    Unknown 3 5

aCros 1.25 (0.91, 1.46) 1.22 (1.13, 1.43) 0.7 >0.9
    Unknown 3 6

aP1NP 986 (843, 1,201) 988 (669, 1,201) 0.8 >0.9
    Unknown 3 6

aUI 190 (134, 271) 98 (65, 198) 0.060 0.6
    Unknown 2 9

aUREA 3.20 (2.70, 3.90) 3.60 (2.70, 4.40) 0.4 >0.9
    Unknown 2 5

aCREA 20 (19, 23) 19 (18, 23) 0.6 >0.9
    Unknown 2 5

aUA 223 (175, 241) 218 (184, 255) 0.7 >0.9
    Unknown 2 5

aVIT_AKTB12 59 (44, 90) 138 (89, 187) 0.002 0.057
    Unknown 3 6

aHCY 9.0 (6.9, 12.6) 7.1 (6.0, 8.9) 0.043 0.6
    Unknown 5 8

aMMA 305 (188, 638) 152 (124, 190) <0.001 0.015
    Unknown 3 10

aVIT_D 98 (81, 129) 104 (81, 119) >0.9 >0.9
    Unknown 2 5

aFOLAT 18.2 (16.9, 21.1) 18.1 (15.6, 22.6) >0.9 >0.9
    Unknown 2 6

aIGF1 63 (50, 84) 64 (45, 89) >0.9 >0.9
    Unknown 4 11

aAL_child 1 (6.7%) 1 (2.5%) 0.5 >0.9
aSUP_VEG1 0 (0%) 1 (2.5%) >0.9 >0.9
aSup_B12 7 (47%) 30 (75%) 0.059 0.6
aSUP_FOL 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vitA 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vitB1 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_vit.B5 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_D 14 (93%) 33 (83%) 0.4 >0.9
aSUP_Mg



    0 15 (100%) 40 (100%)

aSUP_Zn 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Se 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Ca 0 (0%) 1 (2.5%) >0.9 >0.9
aSUP_Fe 1 (6.7%) 2 (5.0%) >0.9 >0.9
aSUP_Iod 0 (0%) 2 (5.0%) >0.9 >0.9
aSUP_Ѡ3 2 (13%) 23 (58%) 0.003 0.074
aSUP_CHLO



    0 15 (100%) 40 (100%)

aSUP_ALG



    0 15 (100%) 40 (100%)

aSUP_GB



    0 15 (100%) 40 (100%)

aSUP_FORT



    0 15 (100%) 40 (100%)

aSUP_PROB 2 (13%) 0 (0%) 0.071 0.6
aSUP_OTH 4 (27%) 5 (13%) 0.2 >0.9
aUr_Krea 2.75 (1.40, 3.80) 1.80 (1.05, 4.35) 0.5 >0.9
    Unknown 1 8

aUr_Ca 1.07 (0.58, 2.61) 1.02 (0.26, 2.06) 0.5 >0.9
    Unknown 1 8

aCa_per_Krea 0.49 (0.13, 0.88) 0.41 (0.22, 0.78) 0.8 >0.9
    Unknown 1 8

aI_per_Krea 563 (325, 1,089) 402 (263, 786) 0.3 >0.9
    Unknown 2 10

aP_per_Krea 3.53 (2.17, 4.16) 3.12 (1.66, 4.61) 0.5 >0.9
    Unknown 1 8

aBiW 3,400 (3,200, 3,600) 3,500 (3,050, 3,650) >0.9 >0.9
    Unknown 0 1

aBREAKS 0 (0%) 1 (2.5%) >0.9 >0.9
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum exact test; Pearson’s Chi-squared test; Wilcoxon rank sum test; Fisher’s exact test

3

False discovery rate correction for multiple testing

2.2.4 Adults characteristics table

Comparison of clinical outcomes across diet groups in adults

2.2.4.1 Overall

Open code
DatChar_adult <- run(
  dat_adult %>% 
    select(-FAM, -ID) %>% 
    tbl_summary(by = 'GRP') %>%
    modify_caption("Supplementary Table 4. Adults characteristics according to food preferences") %>% 
    add_p() %>% 
    add_q(),
  
  path = 'gitignore/run/DatChar_adult', reuse=TRUE)

DatChar_adult
Supplementary Table 4. Adults characteristics according to food preferences

Characteristic

OM
N = 50

1

VG
N = 45

1

VN
N = 92

1

p-value

2

q-value

3
aAGE 35.8 (32.8, 40.0) 36.7 (33.4, 38.2) 33.9 (31.5, 37.2) 0.024 0.092
SEX


>0.9 >0.9
    F 25 (50%) 23 (51%) 47 (51%)

    M 25 (50%) 22 (49%) 45 (49%)

aBMI 24.5 (22.4, 26.7) 22.9 (21.5, 26.1) 22.6 (20.8, 25.6) 0.063 0.2
aWHR 0.79 (0.75, 0.85) 0.78 (0.73, 0.85) 0.78 (0.73, 0.82) 0.4 0.6
    Unknown 0 0 4

aHEIGHT 1.76 (1.69, 1.80) 1.74 (1.72, 1.80) 1.73 (1.66, 1.81) 0.6 0.7
aMASS 75 (65, 84) 72 (65, 80) 69 (59, 81) 0.14 0.3
aHG 38 (30, 54) 43 (32, 51) 40 (31, 52) 0.9 >0.9
    Unknown 1 0 0

aPFAT 21 (18, 29) 23 (16, 29) 21 (15, 26) 0.4 0.5
aFAT 17 (12, 22) 17 (11, 23) 14 (10, 18) 0.078 0.2
aFFM 54 (48, 68) 56 (49, 64) 53 (45, 65) 0.4 0.5
aSBP 125 (116, 140) 121 (111, 134) 121 (112, 134) 0.2 0.4
aDBP 79 (70, 83) 79 (73, 86) 75 (70, 80) 0.014 0.061
aGLY 4.49 (4.25, 4.77) 4.44 (4.19, 4.66) 4.45 (4.13, 4.71) 0.5 0.6
aTC 4.85 (4.30, 5.40) 4.28 (3.78, 5.02) 4.15 (3.65, 4.68) <0.001 <0.001
aHDL 1.53 (1.23, 1.74) 1.35 (1.20, 1.68) 1.43 (1.24, 1.69) 0.6 0.8
aLDL 2.81 (2.44, 3.34) 2.36 (2.04, 3.10) 2.23 (1.92, 2.77) <0.001 <0.001
aTG 0.87 (0.57, 1.16) 0.76 (0.65, 1.02) 0.74 (0.57, 1.06) 0.4 0.6
aCa 2.44 (2.38, 2.52) 2.45 (2.41, 2.50) 2.46 (2.42, 2.51) 0.7 0.8
aP 1.12 (1.06, 1.21) 1.12 (0.97, 1.26) 1.08 (1.01, 1.21) 0.5 0.6
aMg 0.79 (0.77, 0.87) 0.81 (0.78, 0.83) 0.81 (0.77, 0.85) >0.9 >0.9
aSe 1.00 (0.92, 1.17) 0.97 (0.67, 1.18) 0.97 (0.75, 1.18) 0.4 0.5
aZn 14.05 (12.90, 15.60) 13.10 (11.70, 14.10) 12.10 (10.75, 13.80) <0.001 <0.001
aFE 20 (16, 24) 15 (12, 25) 19 (15, 25) 0.2 0.3
aVKFE 68 (62, 74) 70 (62, 77) 68 (65, 76) 0.6 0.7
aFERR 38 (23, 83) 25 (16, 50) 26 (14, 35) 0.003 0.015
aTRF 2.71 (2.46, 2.94) 2.77 (2.46, 3.07) 2.70 (2.56, 3.02) 0.6 0.8
aSATTRF 28 (24, 36) 22 (17, 39) 29 (21, 36) 0.2 0.3
aTRFINDEX 0.73 (0.61, 0.93) 0.92 (0.64, 1.17) 0.84 (0.70, 1.02) 0.015 0.061
    Unknown 0 1 1

aSTRF 1.18 (1.05, 1.32) 1.25 (1.05, 1.47) 1.21 (1.01, 1.34) 0.2 0.4
    Unknown 0 1 0

aHGB 147 (136, 154) 144 (134, 154) 145 (135, 156) 0.8 0.8
aMCV 87.6 (86.0, 89.8) 86.7 (85.1, 89.5) 89.7 (87.0, 91.8) <0.001 0.004
aPTH 2.95 (2.40, 4.00) 3.00 (2.20, 3.40) 3.30 (2.70, 4.10) 0.026 0.10
aCros 0.36 (0.25, 0.56) 0.36 (0.27, 0.48) 0.41 (0.30, 0.59) 0.2 0.4
aP1NP 45 (33, 60) 43 (37, 61) 52 (40, 73) 0.062 0.2
aUI 120 (81, 213) 94 (41, 171) 91 (45, 152) 0.087 0.2
    Unknown 8 5 5

aUREA 4.80 (4.00, 5.70) 4.40 (3.80, 5.10) 3.95 (3.20, 4.50) <0.001 <0.001
aCREA 70 (59, 81) 66 (58, 78) 64 (56, 72) 0.036 0.12
aUA 306 (249, 365) 290 (246, 350) 300 (247, 348) >0.9 >0.9
aVIT_AKTB12 84 (71, 109) 75 (54, 106) 90 (66, 124) 0.10 0.2
aHCY 15.2 (11.9, 18.1) 15.8 (12.7, 21.5) 14.2 (12.5, 17.1) 0.2 0.4
    Unknown 0 10 14

aMMA 194 (158, 234) 236 (161, 305) 170 (134, 215) <0.001 0.005
aVIT_D 67 (51, 79) 73 (59, 88) 76 (65, 92) 0.001 0.009
aFOLAT 9.2 (7.3, 11.6) 12.9 (10.1, 15.4) 12.6 (9.7, 16.2) <0.001 <0.001
aAL_adult 17 (34%) 12 (27%) 12 (13%) 0.011 0.053
aSUP_VEG1 0 (0%) 6 (13%) 4 (4.3%) 0.013 0.059
aSup_B12 1 (2.0%) 23 (51%) 76 (83%) <0.001 <0.001
aSUP_FOL 1 (2.0%) 0 (0%) 6 (6.5%) 0.2 0.4
aSUP_vitA 0 (0%) 0 (0%) 2 (2.2%) 0.7 0.8
aSUP_vitB1 1 (2.0%) 1 (2.2%) 2 (2.2%) >0.9 >0.9
aSUP_vit.B5 1 (2.0%) 1 (2.2%) 2 (2.2%) >0.9 >0.9
aSUP_D 17 (34%) 34 (76%) 65 (71%) <0.001 <0.001
aSUP_Mg 13 (26%) 11 (24%) 12 (13%) 0.10 0.2
aSUP_Zn 6 (12%) 6 (13%) 5 (5.4%) 0.2 0.4
aSUP_Se 0 (0%) 1 (2.2%) 3 (3.3%) 0.7 0.8
aSUP_Ca 0 (0%) 3 (6.7%) 10 (11%) 0.030 0.11
aSUP_Fe 3 (6.0%) 3 (6.7%) 12 (13%) 0.4 0.5
aSUP_Iod 1 (2.0%) 3 (6.7%) 11 (12%) 0.093 0.2
aSUP_Ѡ3 6 (12%) 14 (31%) 47 (51%) <0.001 <0.001
aSUP_CHLO 0 (0%) 1 (2.2%) 0 (0%) 0.2 0.4
aSUP_ALG 0 (0%) 2 (4.4%) 2 (2.2%) 0.3 0.4
aSUP_GB 0 (0%) 2 (4.4%) 0 (0%) 0.057 0.2
aSUP_FORT 1 (2.0%) 3 (6.7%) 2 (2.2%) 0.4 0.6
aSUP_PROB 3 (6.0%) 2 (4.4%) 1 (1.1%) 0.2 0.4
aSUP_OTH 15 (30%) 14 (31%) 23 (25%) 0.7 0.8
aUr_Krea 6.2 (2.9, 13.8) 5.8 (2.9, 12.2) 4.9 (2.4, 11.0) 0.5 0.6
    Unknown 1 0 0

aUr_Ca 1.01 (0.57, 1.52) 0.80 (0.40, 1.53) 0.61 (0.26, 1.30) 0.081 0.2
    Unknown 1 0 0

aCa_per_Krea 0.17 (0.10, 0.25) 0.18 (0.10, 0.25) 0.14 (0.10, 0.21) 0.4 0.6
    Unknown 1 0 0

aI_per_Krea 181 (111, 328) 109 (66, 243) 144 (67, 254) 0.11 0.3
    Unknown 9 5 5

aP_per_Krea 1.71 (1.33, 2.17) 1.46 (0.76, 2.00) 1.15 (0.69, 1.52) <0.001 <0.001
    Unknown 1 0 0

aBREAKS 27 (54%) 23 (51%) 37 (40%) 0.2 0.4
1

Median (Q1, Q3); n (%)

2

Kruskal-Wallis rank sum test; Pearson’s Chi-squared test; Fisher’s exact test

3

False discovery rate correction for multiple testing

Open code

DatChar_adult_df <- DatChar_adult$table_body %>%
  as_tibble()

2.2.4.2 OM vs VG

Open code
DatChar_adult_OM_VG <- run(
  dat_adult %>% 
    select(-FAM, -ID) %>% 
    filter(GRP == 'OM' | GRP == 'VG') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(by = 'GRP') %>%
    modify_caption("OM vs VG. Adults characteristics according to food preferences") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
  
  path = 'gitignore/run/DatChar_adult_OM_VG', reuse=TRUE)

DatChar_adult_OM_VG
OM vs VG. Adults characteristics according to food preferences

Characteristic

OM
N = 50

1

VG
N = 45

1

p-value

2

q-value

3
aAGE 35.8 (32.8, 40.0) 36.7 (33.4, 38.2) >0.9 >0.9
SEX

>0.9 >0.9
    F 25 (50%) 23 (51%)

    M 25 (50%) 22 (49%)

aBMI 24.5 (22.4, 26.7) 22.9 (21.5, 26.1) 0.3 0.6
aWHR 0.79 (0.75, 0.85) 0.78 (0.73, 0.85) >0.9 >0.9
aHEIGHT 1.76 (1.69, 1.80) 1.74 (1.72, 1.80) 0.8 >0.9
aMASS 75 (65, 84) 72 (65, 80) 0.8 >0.9
aHG 38 (30, 54) 43 (32, 51) 0.6 >0.9
    Unknown 1 0

aPFAT 21 (18, 29) 23 (16, 29) >0.9 >0.9
aFAT 17 (12, 22) 17 (11, 23) >0.9 >0.9
aFFM 54 (48, 68) 56 (49, 64) 0.7 >0.9
aSBP 125 (116, 140) 121 (111, 134) 0.3 0.6
aDBP 79 (70, 83) 79 (73, 86) 0.3 0.7
aGLY 4.49 (4.25, 4.77) 4.44 (4.19, 4.66) 0.4 0.8
aTC 4.85 (4.30, 5.40) 4.28 (3.78, 5.02) 0.005 0.076
aHDL 1.53 (1.23, 1.74) 1.35 (1.20, 1.68) 0.4 0.7
aLDL 2.81 (2.44, 3.34) 2.36 (2.04, 3.10) 0.016 0.14
aTG 0.87 (0.57, 1.16) 0.76 (0.65, 1.02) 0.4 0.8
aCa 2.44 (2.38, 2.52) 2.45 (2.41, 2.50) 0.5 0.8
aP 1.12 (1.06, 1.21) 1.12 (0.97, 1.26) >0.9 >0.9
aMg 0.79 (0.77, 0.87) 0.81 (0.78, 0.83) >0.9 >0.9
aSe 1.00 (0.92, 1.17) 0.97 (0.67, 1.18) 0.2 0.6
aZn 14.05 (12.90, 15.60) 13.10 (11.70, 14.10) 0.006 0.076
aFE 20 (16, 24) 15 (12, 25) 0.11 0.4
aVKFE 68 (62, 74) 70 (62, 77) 0.3 0.7
aFERR 38 (23, 83) 25 (16, 50) 0.025 0.2
aTRF 2.71 (2.46, 2.94) 2.77 (2.46, 3.07) 0.4 0.7
aSATTRF 28 (24, 36) 22 (17, 39) 0.076 0.3
aTRFINDEX 0.73 (0.61, 0.93) 0.92 (0.64, 1.17) 0.013 0.13
    Unknown 0 1

aSTRF 1.18 (1.05, 1.32) 1.25 (1.05, 1.47) 0.10 0.4
    Unknown 0 1

aHGB 147 (136, 154) 144 (134, 154) 0.4 0.8
aMCV 87.6 (86.0, 89.8) 86.7 (85.1, 89.5) 0.13 0.4
aPTH 2.95 (2.40, 4.00) 3.00 (2.20, 3.40) 0.5 0.8
aCros 0.36 (0.25, 0.56) 0.36 (0.27, 0.48) 0.6 >0.9
aP1NP 45 (33, 60) 43 (37, 61) 0.4 0.8
aUI 120 (81, 213) 94 (41, 171) 0.091 0.4
    Unknown 8 5

aUREA 4.80 (4.00, 5.70) 4.40 (3.80, 5.10) 0.2 0.5
aCREA 70 (59, 81) 66 (58, 78) 0.2 0.6
aUA 306 (249, 365) 290 (246, 350) 0.7 >0.9
aVIT_AKTB12 84 (71, 109) 75 (54, 106) 0.12 0.4
aHCY 15.2 (11.9, 18.1) 15.8 (12.7, 21.5) 0.4 0.7
    Unknown 0 10

aMMA 194 (158, 234) 236 (161, 305) 0.050 0.3
aVIT_D 67 (51, 79) 73 (59, 88) 0.072 0.3
aFOLAT 9.2 (7.3, 11.6) 12.9 (10.1, 15.4) <0.001 0.012
aAL_adult 17 (34%) 12 (27%) 0.4 0.8
aSUP_VEG1 0 (0%) 6 (13%) 0.009 0.11
aSup_B12 1 (2.0%) 23 (51%) <0.001 <0.001
aSUP_FOL 1 (2.0%) 0 (0%) >0.9 >0.9
aSUP_vitA



    0 50 (100%) 45 (100%)

aSUP_vitB1 1 (2.0%) 1 (2.2%) >0.9 >0.9
aSUP_vit.B5 1 (2.0%) 1 (2.2%) >0.9 >0.9
aSUP_D 17 (34%) 34 (76%) <0.001 0.002
aSUP_Mg 13 (26%) 11 (24%) 0.9 >0.9
aSUP_Zn 6 (12%) 6 (13%) 0.8 >0.9
aSUP_Se 0 (0%) 1 (2.2%) 0.5 0.8
aSUP_Ca 0 (0%) 3 (6.7%) 0.10 0.4
aSUP_Fe 3 (6.0%) 3 (6.7%) >0.9 >0.9
aSUP_Iod 1 (2.0%) 3 (6.7%) 0.3 0.7
aSUP_Ѡ3 6 (12%) 14 (31%) 0.023 0.2
aSUP_CHLO 0 (0%) 1 (2.2%) 0.5 0.8
aSUP_ALG 0 (0%) 2 (4.4%) 0.2 0.6
aSUP_GB 0 (0%) 2 (4.4%) 0.2 0.6
aSUP_FORT 1 (2.0%) 3 (6.7%) 0.3 0.7
aSUP_PROB 3 (6.0%) 2 (4.4%) >0.9 >0.9
aSUP_OTH 15 (30%) 14 (31%) >0.9 >0.9
aUr_Krea 6.2 (2.9, 13.8) 5.8 (2.9, 12.2) 0.8 >0.9
    Unknown 1 0

aUr_Ca 1.01 (0.57, 1.52) 0.80 (0.40, 1.53) 0.5 0.8
    Unknown 1 0

aCa_per_Krea 0.17 (0.10, 0.25) 0.18 (0.10, 0.25) >0.9 >0.9
    Unknown 1 0

aI_per_Krea 181 (111, 328) 109 (66, 243) 0.046 0.3
    Unknown 9 5

aP_per_Krea 1.71 (1.33, 2.17) 1.46 (0.76, 2.00) 0.074 0.3
    Unknown 1 0

aBREAKS 27 (54%) 23 (51%) 0.8 >0.9
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test; Wilcoxon rank sum exact test

3

False discovery rate correction for multiple testing

2.2.4.3 OM vs VN

Open code
DatChar_adult_OM_VN <- run(
  dat_adult %>% 
    select(-FAM, -ID) %>% 
    filter(GRP == 'OM' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(by = 'GRP') %>%
    modify_caption("OM vs VN. Adults characteristics according to food preferences") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
  
  path = 'gitignore/run/DatChar_adult_OM_VN', reuse=TRUE)

DatChar_adult_OM_VN
OM vs VN. Adults characteristics according to food preferences

Characteristic

OM
N = 50

1

VN
N = 92

1

p-value

2

q-value

3
aAGE 35.8 (32.8, 40.0) 33.9 (31.5, 37.2) 0.035 0.11
SEX

>0.9 >0.9
    F 25 (50%) 47 (51%)

    M 25 (50%) 45 (49%)

aBMI 24.5 (22.4, 26.7) 22.6 (20.8, 25.6) 0.020 0.080
aWHR 0.79 (0.75, 0.85) 0.78 (0.73, 0.82) 0.2 0.4
    Unknown 0 4

aHEIGHT 1.76 (1.69, 1.80) 1.73 (1.66, 1.81) 0.5 0.7
aMASS 75 (65, 84) 69 (59, 81) 0.078 0.2
aHG 38 (30, 54) 40 (31, 52) 0.8 >0.9
    Unknown 1 0

aPFAT 21 (18, 29) 21 (15, 26) 0.2 0.4
aFAT 17 (12, 22) 14 (10, 18) 0.039 0.11
aFFM 54 (48, 68) 53 (45, 65) 0.2 0.4
aSBP 125 (116, 140) 121 (112, 134) 0.083 0.2
aDBP 79 (70, 83) 75 (70, 80) 0.11 0.2
aGLY 4.49 (4.25, 4.77) 4.45 (4.13, 4.71) 0.2 0.4
aTC 4.85 (4.30, 5.40) 4.15 (3.65, 4.68) <0.001 <0.001
aHDL 1.53 (1.23, 1.74) 1.43 (1.24, 1.69) 0.5 0.7
aLDL 2.81 (2.44, 3.34) 2.23 (1.92, 2.77) <0.001 <0.001
aTG 0.87 (0.57, 1.16) 0.74 (0.57, 1.06) 0.2 0.4
aCa 2.44 (2.38, 2.52) 2.46 (2.42, 2.51) 0.5 0.7
aP 1.12 (1.06, 1.21) 1.08 (1.01, 1.21) 0.2 0.4
aMg 0.79 (0.77, 0.87) 0.81 (0.77, 0.85) >0.9 >0.9
aSe 1.00 (0.92, 1.17) 0.97 (0.75, 1.18) 0.2 0.4
aZn 14.05 (12.90, 15.60) 12.10 (10.75, 13.80) <0.001 <0.001
aFE 20 (16, 24) 19 (15, 25) >0.9 >0.9
aVKFE 68 (62, 74) 68 (65, 76) 0.5 0.6
aFERR 38 (23, 83) 26 (14, 35) <0.001 0.005
aTRF 2.71 (2.46, 2.94) 2.70 (2.56, 3.02) 0.5 0.6
aSATTRF 28 (24, 36) 29 (21, 36) 0.8 >0.9
aTRFINDEX 0.73 (0.61, 0.93) 0.84 (0.70, 1.02) 0.010 0.047
    Unknown 0 1

aSTRF 1.18 (1.05, 1.32) 1.21 (1.01, 1.34) 0.6 0.7
aHGB 147 (136, 154) 145 (135, 156) 0.7 0.8
aMCV 87.6 (86.0, 89.8) 89.7 (87.0, 91.8) 0.019 0.080
aPTH 2.95 (2.40, 4.00) 3.30 (2.70, 4.10) 0.063 0.2
aCros 0.36 (0.25, 0.56) 0.41 (0.30, 0.59) 0.3 0.4
aP1NP 45 (33, 60) 52 (40, 73) 0.026 0.093
aUI 120 (81, 213) 91 (45, 152) 0.033 0.11
    Unknown 8 5

aUREA 4.80 (4.00, 5.70) 3.95 (3.20, 4.50) <0.001 <0.001
aCREA 70 (59, 81) 64 (56, 72) 0.009 0.046
aUA 306 (249, 365) 300 (247, 348) 0.7 0.8
aVIT_AKTB12 84 (71, 109) 90 (66, 124) 0.6 0.7
aHCY 15.2 (11.9, 18.1) 14.2 (12.5, 17.1) 0.4 0.6
    Unknown 0 14

aMMA 194 (158, 234) 170 (134, 215) 0.024 0.089
aVIT_D 67 (51, 79) 76 (65, 92) <0.001 0.003
aFOLAT 9.2 (7.3, 11.6) 12.6 (9.7, 16.2) <0.001 <0.001
aAL_adult 17 (34%) 12 (13%) 0.003 0.018
aSUP_VEG1 0 (0%) 4 (4.3%) 0.3 0.4
aSup_B12 1 (2.0%) 76 (83%) <0.001 <0.001
aSUP_FOL 1 (2.0%) 6 (6.5%) 0.4 0.6
aSUP_vitA 0 (0%) 2 (2.2%) 0.5 0.7
aSUP_vitB1 1 (2.0%) 2 (2.2%) >0.9 >0.9
aSUP_vit.B5 1 (2.0%) 2 (2.2%) >0.9 >0.9
aSUP_D 17 (34%) 65 (71%) <0.001 <0.001
aSUP_Mg 13 (26%) 12 (13%) 0.053 0.15
aSUP_Zn 6 (12%) 5 (5.4%) 0.2 0.4
aSUP_Se 0 (0%) 3 (3.3%) 0.6 0.7
aSUP_Ca 0 (0%) 10 (11%) 0.015 0.066
aSUP_Fe 3 (6.0%) 12 (13%) 0.2 0.4
aSUP_Iod 1 (2.0%) 11 (12%) 0.056 0.2
aSUP_Ѡ3 6 (12%) 47 (51%) <0.001 <0.001
aSUP_CHLO



    0 50 (100%) 92 (100%)

aSUP_ALG 0 (0%) 2 (2.2%) 0.5 0.7
aSUP_GB



    0 50 (100%) 92 (100%)

aSUP_FORT 1 (2.0%) 2 (2.2%) >0.9 >0.9
aSUP_PROB 3 (6.0%) 1 (1.1%) 0.13 0.3
aSUP_OTH 15 (30%) 23 (25%) 0.5 0.7
aUr_Krea 6.2 (2.9, 13.8) 4.9 (2.4, 11.0) 0.3 0.4
    Unknown 1 0

aUr_Ca 1.01 (0.57, 1.52) 0.61 (0.26, 1.30) 0.035 0.11
    Unknown 1 0

aCa_per_Krea 0.17 (0.10, 0.25) 0.14 (0.10, 0.21) 0.3 0.4
    Unknown 1 0

aI_per_Krea 181 (111, 328) 144 (67, 254) 0.11 0.2
    Unknown 9 5

aP_per_Krea 1.71 (1.33, 2.17) 1.15 (0.69, 1.52) <0.001 <0.001
    Unknown 1 0

aBREAKS 27 (54%) 37 (40%) 0.11 0.3
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test

3

False discovery rate correction for multiple testing

2.2.4.4 VG vs VN

Open code
DatChar_adult_VG_VN <- run(
  dat_adult %>% 
    select(-FAM, -ID) %>% 
    filter(GRP == 'VG' | GRP == 'VN') %>%
    mutate(GRP = factor(GRP)) %>% 
    tbl_summary(by = 'GRP') %>%
    modify_caption("VG vs VN. Adults characteristics according to food preferences") %>% 
    add_p() %>% 
    add_q() %>% 
    as_gt(),
  
  path = 'gitignore/run/DatChar_adult_VG_VN', reuse=TRUE)

DatChar_adult_VG_VN
VG vs VN. Adults characteristics according to food preferences

Characteristic

VG
N = 45

1

VN
N = 92

1

p-value

2

q-value

3
aAGE 36.7 (33.4, 38.2) 33.9 (31.5, 37.2) 0.018 0.2
SEX

>0.9 >0.9
    F 23 (51%) 47 (51%)

    M 22 (49%) 45 (49%)

aBMI 22.9 (21.5, 26.1) 22.6 (20.8, 25.6) 0.3 0.6
aWHR 0.78 (0.73, 0.85) 0.78 (0.73, 0.82) 0.3 0.6
    Unknown 0 4

aHEIGHT 1.74 (1.72, 1.80) 1.73 (1.66, 1.81) 0.3 0.6
aMASS 72 (65, 80) 69 (59, 81) 0.14 0.4
aHG 43 (32, 51) 40 (31, 52) 0.7 0.8
aPFAT 23 (16, 29) 21 (15, 26) 0.3 0.6
aFAT 17 (11, 23) 14 (10, 18) 0.11 0.4
aFFM 56 (49, 64) 53 (45, 65) 0.4 0.6
aSBP 121 (111, 134) 121 (112, 134) 0.8 >0.9
aDBP 79 (73, 86) 75 (70, 80) 0.005 0.081
aGLY 4.44 (4.19, 4.66) 4.45 (4.13, 4.71) >0.9 >0.9
aTC 4.28 (3.78, 5.02) 4.15 (3.65, 4.68) 0.2 0.4
aHDL 1.35 (1.20, 1.68) 1.43 (1.24, 1.69) 0.6 0.8
aLDL 2.36 (2.04, 3.10) 2.23 (1.92, 2.77) 0.11 0.4
aTG 0.76 (0.65, 1.02) 0.74 (0.57, 1.06) 0.5 0.8
aCa 2.45 (2.41, 2.50) 2.46 (2.42, 2.51) >0.9 >0.9
aP 1.12 (0.97, 1.26) 1.08 (1.01, 1.21) 0.4 0.6
aMg 0.81 (0.78, 0.83) 0.81 (0.77, 0.85) 0.8 >0.9
aSe 0.97 (0.67, 1.18) 0.97 (0.75, 1.18) >0.9 >0.9
aZn 13.10 (11.70, 14.10) 12.10 (10.75, 13.80) 0.032 0.2
aFE 15 (12, 25) 19 (15, 25) 0.082 0.4
aVKFE 70 (62, 77) 68 (65, 76) 0.8 >0.9
aFERR 25 (16, 50) 26 (14, 35) 0.4 0.6
aTRF 2.77 (2.46, 3.07) 2.70 (2.56, 3.02) 0.8 >0.9
aSATTRF 22 (17, 39) 29 (21, 36) 0.090 0.4
aTRFINDEX 0.92 (0.64, 1.17) 0.84 (0.70, 1.02) 0.6 0.8
    Unknown 1 1

aSTRF 1.25 (1.05, 1.47) 1.21 (1.01, 1.34) 0.2 0.4
    Unknown 1 0

aHGB 144 (134, 154) 145 (135, 156) 0.7 >0.9
aMCV 86.7 (85.1, 89.5) 89.7 (87.0, 91.8) <0.001 0.012
aPTH 3.00 (2.20, 3.40) 3.30 (2.70, 4.10) 0.014 0.2
aCros 0.36 (0.27, 0.48) 0.41 (0.30, 0.59) 0.095 0.4
aP1NP 43 (37, 61) 52 (40, 73) 0.2 0.4
aUI 94 (41, 171) 91 (45, 152) >0.9 >0.9
    Unknown 5 5

aUREA 4.40 (3.80, 5.10) 3.95 (3.20, 4.50) 0.007 0.10
aCREA 66 (58, 78) 64 (56, 72) 0.3 0.6
aUA 290 (246, 350) 300 (247, 348) 0.8 >0.9
aVIT_AKTB12 75 (54, 106) 90 (66, 124) 0.036 0.3
aHCY 15.8 (12.7, 21.5) 14.2 (12.5, 17.1) 0.067 0.4
    Unknown 10 14

aMMA 236 (161, 305) 170 (134, 215) <0.001 0.014
aVIT_D 73 (59, 88) 76 (65, 92) 0.12 0.4
aFOLAT 12.9 (10.1, 15.4) 12.6 (9.7, 16.2) 0.8 >0.9
aAL_adult 12 (27%) 12 (13%) 0.049 0.3
aSUP_VEG1 6 (13%) 4 (4.3%) 0.080 0.4
aSup_B12 23 (51%) 76 (83%) <0.001 0.008
aSUP_FOL 0 (0%) 6 (6.5%) 0.2 0.4
aSUP_vitA 0 (0%) 2 (2.2%) >0.9 >0.9
aSUP_vitB1 1 (2.2%) 2 (2.2%) >0.9 >0.9
aSUP_vit.B5 1 (2.2%) 2 (2.2%) >0.9 >0.9
aSUP_D 34 (76%) 65 (71%) 0.5 0.8
aSUP_Mg 11 (24%) 12 (13%) 0.094 0.4
aSUP_Zn 6 (13%) 5 (5.4%) 0.2 0.4
aSUP_Se 1 (2.2%) 3 (3.3%) >0.9 >0.9
aSUP_Ca 3 (6.7%) 10 (11%) 0.5 0.8
aSUP_Fe 3 (6.7%) 12 (13%) 0.4 0.6
aSUP_Iod 3 (6.7%) 11 (12%) 0.5 0.8
aSUP_Ѡ3 14 (31%) 47 (51%) 0.027 0.2
aSUP_CHLO 1 (2.2%) 0 (0%) 0.3 0.6
aSUP_ALG 2 (4.4%) 2 (2.2%) 0.6 0.8
aSUP_GB 2 (4.4%) 0 (0%) 0.11 0.4
aSUP_FORT 3 (6.7%) 2 (2.2%) 0.3 0.6
aSUP_PROB 2 (4.4%) 1 (1.1%) 0.3 0.6
aSUP_OTH 14 (31%) 23 (25%) 0.4 0.7
aUr_Krea 5.8 (2.9, 12.2) 4.9 (2.4, 11.0) 0.4 0.6
aUr_Ca 0.80 (0.40, 1.53) 0.61 (0.26, 1.30) 0.2 0.4
aCa_per_Krea 0.18 (0.10, 0.25) 0.14 (0.10, 0.21) 0.3 0.6
aI_per_Krea 109 (66, 243) 144 (67, 254) 0.5 0.7
    Unknown 5 5

aP_per_Krea 1.46 (0.76, 2.00) 1.15 (0.69, 1.52) 0.044 0.3
aBREAKS 23 (51%) 37 (40%) 0.2 0.5
1

Median (Q1, Q3); n (%)

2

Wilcoxon rank sum test; Pearson’s Chi-squared test; Fisher’s exact test

3

False discovery rate correction for multiple testing

2.3 Distribution of numerical characteristics

2.3.1 All children histograms

Open code
## Reshaping the data to long format
dat_long <- dat_child_all

dat_long <- dat_long %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3)) %>%
  pivot_longer(cols = everything(), names_to = "variable", values_to = "value") %>% 
  mutate(variable = factor(variable, levels = names(dat_long)))

# Creating the histogram matrix
ggplot(dat_long, aes(x = value)) +
  geom_histogram(bins = 20, fill = "skyblue2", color = "grey60") +
  facet_wrap(~ variable, scales = "free") +
  labs(x = "Value", y = "Count", title = "Histogram of Numerical Variables, all children")

2.3.2 Young children histograms

Open code
## Reshaping the data to long format
dat_long <- dat_child_young

dat_long <- dat_long %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3)) %>%
  pivot_longer(cols = everything(), names_to = "variable", values_to = "value") %>% 
  mutate(variable = factor(variable, levels = names(dat_long)))

# Creating the histogram matrix
ggplot(dat_long, aes(x = value)) +
  geom_histogram(bins = 20, fill = "skyblue2", color = "grey60") +
  facet_wrap(~ variable, scales = "free") +
  labs(x = "Value", y = "Count", title = "Histogram of Numerical Variables, young children")

2.3.3 Old children histograms

Open code
## Reshaping the data to long format
dat_long <- dat_child_old

dat_long <- dat_long %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3)) %>%
  pivot_longer(cols = everything(), names_to = "variable", values_to = "value") %>% 
  mutate(variable = factor(variable, levels = names(dat_long)))

# Creating the histogram matrix
ggplot(dat_long, aes(x = value)) +
  geom_histogram(bins = 20, fill = "skyblue2", color = "grey60") +
  facet_wrap(~ variable, scales = "free") +
  labs(x = "Value", y = "Count", title = "Histogram of Numerical Variables, old children")

2.3.4 Adults histograms

Open code
## Reshaping the data to long format
dat_long <- dat_adult

dat_long <- dat_long %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3)) %>%
  pivot_longer(cols = everything(), names_to = "variable", values_to = "value") %>% 
  mutate(variable = factor(variable, levels = names(dat_long)))

# Creating the histogram matrix
ggplot(dat_long, aes(x = value)) +
  geom_histogram(bins = 20, fill = "skyblue2", color = "grey61") +
  facet_wrap(~ variable, scales = "free") +
  labs(x = "Value", y = "Count", title = "Histogram of Numerical Variables, adults ")

2.4 Plot of group characteristics

2.4.1 All children

Open code
## define color
colo <- c('#F9FFAF', '#ACE1A3', '#329243')

## prepare data
df <- dat_child_all

tr <- DatChar_child_all_df %>% 
  filter(!is.na(q.value)) %>% 
  select(variable, q.value)

df <- df %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3) | GRP) 

## define outcomes of interest
outcomes <- data.frame(
  variable = setdiff(names(df), c(
    'GRP', 
    'log2_age', 
    'aBreastFeed_full_duration')))
  
outcomes <- outcomes %>% 
  inner_join(tr, by = 'variable')
  
## define comparison
my_comparisons <- list( c('OM', 'VG'), c('OM', 'VN'), c('VG', 'VN') )

## function to boxplot
boxplot_cond <- function(variable, q.value) {
  
  clean_data <- df %>%
    select(GRP, all_of(variable)) %>%
    drop_na()
  
  upper_limit <- max(clean_data[[variable]], na.rm = TRUE) * 1.5
  
  p <- ggboxplot(clean_data, 
                 x = 'GRP', 
                 y = variable, 
                 fill = 'GRP', 
                 tip.length = 0.15,
                 palette = colo,
                 outlier.shape = 1,
                 lwd = 0.25,
                 outlier.size = 0.8) +
    
    theme(
      plot.title = element_text(size = 10),   # Smaller title
      axis.title = element_text(size = 8),    # Smaller axis titles
      axis.text = element_text(size = 7)      # Smaller axis labels
    ) +
    
    rremove("legend") +
    
    coord_cartesian(ylim = c(0, upper_limit))
  
  if (q.value < 0.05) {
    p <- p + stat_compare_means(
      method = 'wilcox.test',
      label = 'P',
      comparisons = my_comparisons,
      size = 3,
      label.y = upper_limit * c(0.7, 0.8, 0.9))
  }
  
  return(p)
}

# Plot all outcomes
plots <- pmap(outcomes, boxplot_cond)

# Arrange plots in a matrix
plots_arranged <- ggarrange(plotlist = plots, ncol = 8, nrow = 5)
plots_arranged
## $`1`

## 
## $`2`

## 
## attr(,"class")
## [1] "list"      "ggarrange"

2.4.2 Young children

Open code
## data
df <- dat_child_young

df <- df %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3) | GRP) 

## defining outcomes of interest
tr <- DatChar_child_young_df %>% 
  filter(!is.na(q.value)) %>% 
  select(variable, q.value)

df <- df %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3) | GRP) 

## define outcomes of interest
outcomes <- data.frame(
  variable = setdiff(names(df), c(
    'GRP', 
    'log2_age', 
    'aBreastFeed_full_duration')))
  
outcomes <- outcomes %>% 
  inner_join(tr, by = 'variable')

## plot all outcomes
plots <- pmap(outcomes, boxplot_cond)

## matrix of plot
plots_arranged <- ggarrange(plotlist = plots, ncol = 9, nrow = 5)
plots_arranged

2.4.3 Old children

Open code
## data
df <- dat_child_old

df <- df %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3) | GRP) 

## defining outcomes of interest
tr <- DatChar_child_old_df %>% 
  filter(!is.na(q.value)) %>% 
  select(variable, q.value)

df <- df %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3) | GRP) 

## define outcomes of interest
outcomes <- data.frame(
  variable = setdiff(names(df), c(
    'GRP', 
    'log2_age', 
    'aBreastFeed_full_duration')))
  
outcomes <- outcomes %>% 
  inner_join(tr, by = 'variable')

## plot all outcomes
plots <- pmap(outcomes, boxplot_cond)

## matrix of plot
plots_arranged <- ggarrange(plotlist = plots, ncol = 9, nrow = 5)
plots_arranged

2.4.4 Adults

Open code
## data
df <- dat_adult

df <- df %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3) | GRP) %>% 
  select(-aCros)

## defining outcomes of interest
tr <- DatChar_adult_df %>% 
  filter(!is.na(q.value)) %>% 
  select(variable, q.value)

df <- df %>% 
  select(where(~is.numeric(.)  && length(unique(.)) >3) | GRP) 

## define outcomes of interest
outcomes <- data.frame(
  variable = setdiff(names(df), c(
    'GRP', 
    'log2_age')))

outcomes <- outcomes %>% 
  inner_join(tr, by = 'variable')

## plot all outcomes
plots <- pmap(outcomes, boxplot_cond)

## matrix of plot
plots_arranged <- ggarrange(plotlist = plots, ncol = 8, nrow = 6)
plots_arranged

3 Food intake summary

Open code
dat_food %>% summary()
##  GRP      Calories.kcal.   Carbohydrates.g.     Fat.g.        Proteins.g.     
##  OM: 71   Min.   : 488.5   Min.   : 49.6    Min.   : 12.94   Min.   :  8.967  
##  VG: 61   1st Qu.:1175.6   1st Qu.:142.9    1st Qu.: 39.76   1st Qu.: 37.557  
##  VN:135   Median :1738.4   Median :200.8    Median : 59.48   Median : 59.423  
##           Mean   :1790.5   Mean   :210.1    Mean   : 64.12   Mean   : 63.414  
##           3rd Qu.:2310.7   3rd Qu.:268.1    3rd Qu.: 82.02   3rd Qu.: 83.641  
##           Max.   :4219.1   Max.   :566.7    Max.   :178.78   Max.   :177.875  
##                                                                               
##     Fiber.g.       Sugars.g.      Saturated.fats..SAFA..g. Cholesterol.mg.   
##  Min.   : 0.00   Min.   : 10.07   Min.   : 0.03763         Min.   :  0.0000  
##  1st Qu.:14.71   1st Qu.: 45.94   1st Qu.: 8.62974         1st Qu.:  0.0684  
##  Median :23.73   Median : 60.14   Median :14.02014         Median : 30.8760  
##  Mean   :27.13   Mean   : 66.07   Mean   :17.20864         Mean   : 64.0970  
##  3rd Qu.:35.63   3rd Qu.: 79.80   3rd Qu.:24.52420         3rd Qu.:102.1615  
##  Max.   :95.39   Max.   :188.59   Max.   :60.13940         Max.   :432.7600  
##                                   NA's   :7                                  
##  Phosphorus.mg.   Magnesium.mg.        Zinc.mg.        Selenium.μg.  
##  Min.   : 103.3   Min.   :  20.67   Min.   : 0.7287   Min.   : 1.38  
##  1st Qu.: 529.1   1st Qu.: 150.26   1st Qu.: 3.9645   1st Qu.:10.68  
##  Median : 816.2   Median : 263.16   Median : 6.6042   Median :19.15  
##  Mean   : 915.8   Mean   : 300.69   Mean   : 8.3542   Mean   :23.06  
##  3rd Qu.:1272.5   3rd Qu.: 401.73   3rd Qu.:10.6941   3rd Qu.:31.20  
##  Max.   :3210.3   Max.   :1031.60   Max.   :45.5507   Max.   :91.06  
##                                                                      
##     Iron.mg.        Calcium.mg.       Iodine.μg.          Age_category
##  Min.   : 0.4823   Min.   :  66.8   Min.   :  4.152   Adult     :154  
##  1st Qu.: 4.5585   1st Qu.: 375.3   1st Qu.: 36.167   Ch < 3 yrs: 65  
##  Median : 8.2290   Median : 588.6   Median : 53.672   Ch > 3 yrs: 48  
##  Mean   : 9.2992   Mean   : 664.2   Mean   : 57.135                   
##  3rd Qu.:12.0101   3rd Qu.: 874.1   3rd Qu.: 68.933                   
##  Max.   :33.1056   Max.   :2095.8   Max.   :323.739                   
## 

3.1 Summary tables

3.1.1 Children all

Open code
food_int_child_all <- run(
  dat_food %>%
    filter(Age_category != 'Adult') %>% 
    select(-Age_category) %>% 
    tbl_summary(
      by = 'GRP') %>%
    modify_caption("Nutrients intake in children (all)") %>% 
    add_p() %>% 
    add_q(),
  
  path = 'gitignore/run/food_int_child_all', reuse = TRUE)


food_int_child_all
Nutrients intake in children (all)

Characteristic

OM
N = 33

1

VG
N = 27

1

VN
N = 53

1

p-value

2

q-value

3
Calories.kcal. 1,047 (831, 1,386) 1,108 (967, 1,449) 1,083 (906, 1,370) 0.7 0.8
Carbohydrates.g. 121 (107, 158) 142 (102, 188) 135 (101, 185) 0.4 0.6
Fat.g. 38 (33, 51) 44 (34, 51) 38 (31, 48) 0.6 0.7
Proteins.g. 38 (29, 51) 36 (28, 49) 32 (22, 42) 0.028 0.084
Fiber.g. 12 (7, 15) 16 (11, 22) 16 (9, 26) 0.011 0.042
Sugars.g. 59 (46, 78) 48 (39, 67) 58 (45, 70) 0.3 0.5
Saturated.fats..SAFA..g. 15 (9, 20) 10 (6, 19) 5 (4, 8) <0.001 <0.001
    Unknown 1 1 5

Cholesterol.mg. 101 (64, 130) 78 (23, 98) 7 (0, 83) <0.001 <0.001
Phosphorus.mg. 598 (359, 751) 518 (296, 762) 396 (238, 672) 0.10 0.2
Magnesium.mg. 136 (85, 169) 144 (72, 204) 141 (91, 239) 0.6 0.7
Zinc.mg. 3.98 (2.74, 5.38) 3.47 (2.59, 5.35) 4.40 (2.72, 6.71) 0.6 0.7
Selenium.μg. 17 (11, 22) 11 (8, 22) 9 (8, 12) <0.001 0.005
Iron.mg. 3.77 (2.20, 5.61) 4.37 (1.69, 5.69) 4.52 (2.79, 6.99) 0.8 0.8
Calcium.mg. 417 (296, 598) 427 (279, 546) 338 (271, 402) 0.2 0.3
Iodine.μg. 47 (26, 57) 46 (24, 56) 37 (20, 52) 0.3 0.5
1

Median (Q1, Q3)

2

Kruskal-Wallis rank sum test

3

False discovery rate correction for multiple testing

Open code

food_int_child_all_df <- food_int_child_all$table_body %>%
  as_tibble()

3.1.2 Children young

Open code
food_int_child_young <- run(
  dat_food %>%
    filter(Age_category == 'Ch < 3 yrs') %>% 
    select(-Age_category) %>% 
    tbl_summary(
      by = 'GRP') %>%
    modify_caption("Nutrients intake in children < 3 years of age") %>% 
    add_p() %>% 
    add_q(),
  
  path = 'gitignore/run/food_int_child_young', reuse = TRUE)


food_int_child_young
Nutrients intake in children < 3 years of age

Characteristic

OM
N = 16

1

VG
N = 12

1

VN
N = 37

1

p-value

2

q-value

3
Calories.kcal. 856 (750, 1,027) 980 (780, 1,088) 1,008 (665, 1,349) 0.5 0.7
Carbohydrates.g. 104 (89, 116) 119 (82, 149) 122 (85, 168) 0.3 0.7
Fat.g. 36 (22, 40) 37 (32, 47) 38 (30, 48) 0.4 0.7
Proteins.g. 29 (21, 36) 29 (19, 35) 30 (16, 37) 0.9 0.9
Fiber.g. 8 (4, 12) 12 (5, 17) 15 (8, 19) 0.074 0.3
Sugars.g. 51 (43, 64) 58 (44, 78) 60 (49, 75) 0.5 0.7
Saturated.fats..SAFA..g. 9.5 (5.8, 15.3) 5.2 (2.2, 8.9) 5.2 (3.1, 8.0) 0.032 0.3
    Unknown 1 1 5

Cholesterol.mg. 101 (52, 121) 91 (42, 120) 52 (0, 103) 0.037 0.3
Phosphorus.mg. 345 (298, 573) 313 (188, 523) 357 (209, 584) 0.7 0.8
Magnesium.mg. 90 (58, 146) 90 (53, 147) 124 (76, 191) 0.5 0.7
Zinc.mg. 2.90 (2.34, 4.34) 2.86 (2.43, 4.89) 4.36 (2.64, 5.84) 0.2 0.5
Selenium.μg. 12.0 (9.7, 17.1) 8.4 (7.6, 18.8) 8.9 (7.7, 11.2) 0.057 0.3
Iron.mg. 2.33 (1.35, 3.68) 2.64 (1.30, 4.65) 3.69 (1.81, 5.42) 0.3 0.7
Calcium.mg. 337 (290, 541) 286 (271, 388) 337 (271, 401) 0.6 0.7
Iodine.μg. 50 (27, 58) 50 (31, 53) 42 (29, 52) 0.6 0.7
1

Median (Q1, Q3)

2

Kruskal-Wallis rank sum test

3

False discovery rate correction for multiple testing

Open code

food_int_child_young_df <- food_int_child_young$table_body %>%
  as_tibble()

3.1.3 Children old

Open code
food_int_child_old <- run(
  dat_food %>%
    filter(Age_category == 'Ch > 3 yrs') %>% 
    select(-Age_category) %>% 
    tbl_summary(
      by = 'GRP') %>%
    modify_caption("Nutrients intake in children of 3+ years of age") %>% 
    add_p() %>% 
    add_q(),
  
  path = 'gitignore/run/food_int_child_old', reuse = TRUE)


food_int_child_old
Nutrients intake in children of 3+ years of age

Characteristic

OM
N = 17

1

VG
N = 15

1

VN
N = 16

1

p-value

2

q-value

3
Calories.kcal. 1,386 (1,132, 1,690) 1,369 (1,108, 1,657) 1,250 (1,080, 1,425) 0.6 0.6
Carbohydrates.g. 158 (135, 179) 166 (123, 222) 172 (140, 196) 0.6 0.6
Fat.g. 51 (36, 66) 47 (38, 53) 39 (36, 42) 0.4 0.5
Proteins.g. 50 (46, 60) 42 (35, 59) 42 (29, 45) 0.041 0.12
Fiber.g. 14 (14, 16) 19 (12, 23) 26 (17, 31) 0.003 0.016
Sugars.g. 71 (50, 89) 45 (38, 61) 54 (45, 66) 0.049 0.12
Saturated.fats..SAFA..g. 20 (16, 26) 14 (11, 21) 7 (5, 10) <0.001 <0.001
Cholesterol.mg. 111 (77, 163) 53 (1, 84) 0 (0, 0) <0.001 <0.001
Phosphorus.mg. 637 (598, 892) 667 (428, 817) 541 (390, 776) 0.3 0.4
Magnesium.mg. 163 (129, 185) 156 (140, 214) 239 (164, 328) 0.077 0.2
Zinc.mg. 4.65 (3.83, 6.53) 3.53 (3.00, 5.35) 4.81 (2.92, 7.55) 0.4 0.5
Selenium.μg. 20 (16, 33) 14 (9, 28) 10 (8, 17) 0.021 0.078
Iron.mg. 5.61 (5.12, 7.33) 5.22 (4.35, 6.82) 6.23 (4.76, 8.75) 0.4 0.5
Calcium.mg. 495 (309, 662) 476 (420, 601) 346 (327, 502) 0.2 0.4
Iodine.μg. 38 (24, 54) 38 (22, 58) 21 (14, 39) 0.14 0.3
1

Median (Q1, Q3)

2

Kruskal-Wallis rank sum test

3

False discovery rate correction for multiple testing

Open code

food_int_child_old_df <- food_int_child_old$table_body %>%
  as_tibble()

3.1.4 Adults

Open code
food_int_adult <- run(
  dat_food %>%
    filter(Age_category == 'Adult') %>% 
    select(-Age_category) %>% 
    tbl_summary(
      by = 'GRP') %>%
    modify_caption("Nutrients intake in adults") %>% 
    add_p() %>% 
    add_q(),
  
  path = 'gitignore/run/food_int_adult', reuse = TRUE)


food_int_adult
Nutrients intake in adults

Characteristic

OM
N = 38

1

VG
N = 34

1

VN
N = 82

1

p-value

2

q-value

3
Calories.kcal. 2,029 (1,698, 2,381) 2,246 (1,701, 2,669) 2,247 (1,844, 2,773) 0.2 0.2
Carbohydrates.g. 214 (178, 248) 221 (199, 289) 284 (228, 337) <0.001 <0.001
Fat.g. 77 (59, 92) 77 (64, 100) 72 (60, 95) >0.9 >0.9
Proteins.g. 84 (73, 106) 70 (59, 104) 75 (65, 97) 0.3 0.3
Fiber.g. 20 (16, 26) 32 (22, 42) 38 (30, 52) <0.001 <0.001
Sugars.g. 62 (46, 88) 63 (44, 102) 65 (50, 81) 0.9 >0.9
Saturated.fats..SAFA..g. 30 (23, 37) 23 (14, 31) 14 (10, 19) <0.001 <0.001
Cholesterol.mg. 164 (135, 232) 56 (6, 83) 0 (0, 1) <0.001 <0.001
Phosphorus.mg. 1,186 (987, 1,401) 1,110 (783, 1,399) 1,087 (811, 1,570) 0.5 0.6
Magnesium.mg. 299 (254, 339) 361 (251, 475) 437 (297, 608) <0.001 <0.001
Zinc.mg. 8.5 (6.5, 10.8) 8.0 (5.0, 12.0) 11.2 (6.6, 14.8) 0.019 0.032
Selenium.μg. 37 (25, 48) 23 (16, 37) 22 (15, 34) <0.001 <0.001
Iron.mg. 9 (8, 12) 11 (7, 14) 13 (10, 20) <0.001 <0.001
Calcium.mg. 881 (674, 1,075) 773 (554, 1,058) 711 (555, 952) 0.051 0.076
Iodine.μg. 73 (60, 87) 64 (46, 69) 59 (40, 82) 0.015 0.028
1

Median (Q1, Q3)

2

Kruskal-Wallis rank sum test

3

False discovery rate correction for multiple testing

Open code

food_int_adult_df <- food_int_adult$table_body %>%
  as_tibble()

3.2 Plots of nutrient intake

Preparation

Open code
## define color
colo <- c('#329243', '#ACE1A3', '#F9FFAF')

## prepare data
df <- dat_food %>% 
  mutate(Age_category2 = recode(Age_category,
                  `Ch > 3 yrs` = 'child_old',
                  `Ch < 3 yrs` = 'child_young')) %>% 
  
  mutate(super_group = interaction(GRP, Age_category2)) %>% 
  
  mutate(super_group = fct_relevel(
    super_group, 
    'OM.child_young', 'VG.child_young', 'VN.child_young',
    'OM.child_old', 'VG.child_old', 'VN.child_old',
    'OM.adult', 'VG.adult', 'VN.adult')) %>% 
  
  mutate(GRP = fct_relevel(
    GRP, 
    'VN', 'VG', 'OM')) %>% 
  
  mutate(Age_category = fct_relevel(
    Age_category, 
    'Ch < 3 yrs', 'Ch > 3 yrs', 'adult'))
    
                              
## define outcomes of interest

outcomes <- data.frame(
  variable = df %>% 
    select(Calories.kcal.:Iodine.μg.) %>% 
    colnames())

outcomes <- outcomes %>% 
  mutate(
    title = str_extract(variable, "^[^.]+"),
    y_title = str_extract(variable, "(?<=\\.).*") %>% 
                     str_replace_all("\\.", "/day")
  )

outcomes$title[1] <- 'Energy'
outcomes$title[7] <- 'Saturate fats'
outcomes$y_title[7] <- 'g/day'

Boxplot

Open code
## function to boxplot
boxplot_cond <- function(variable, y_title, title) {
  
  clean_data <- df %>%
    select(Age_category, GRP, super_group,  variable) %>%
    drop_na()
  
  upper_limit <- max(clean_data[[variable]]) * 1.3
  
  p <- ggboxplot(clean_data, 
                 x = 'GRP', 
                 y = variable, 
                 fill = 'GRP', 
                 tip.length = 0.15,
                 palette = colo,
                 outlier.shape = 1,
                 lwd = 0.25,
                 outlier.size = 0.8,
                 facet.by = 'Age_category',
                 title = title,
                 ylab = y_title) +
    
    theme(
      plot.title = element_text(size = 10), 
      axis.title = element_text(size = 8),  
      axis.text = element_text(size = 7),
      axis.title.x = element_blank()
    ) +
  
    coord_cartesian(ylim = c(NA, upper_limit))

  return(p)
}

# Plot all outcomes
plots <- pmap(outcomes, boxplot_cond)

# Create a matrix of plots
plots_arranged <- ggarrange(plotlist = plots, ncol = 4, nrow = 4,  common.legend = TRUE)
plots_arranged

Open code

path <- paste0('gitignore/figures/plots_arranged.pdf')

if(file.exists(path) == FALSE){
  ggsave(path, 
         plot = plots_arranged,
         width = 13, height = 10,
         device = cairo_pdf)
}

path <- paste0('gitignore/figures/plots_arranged.tiff')
if(file.exists(path) == FALSE){
  tiff(path, width = 13, height = 10, units = 'in', res = 400) 
  grid.draw(plots_arranged)
  dev.off()
}

4 Reproducibility

Open code
sessionInfo()
## R version 4.4.3 (2025-02-28)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 22.04.5 LTS
## 
## Matrix products: default
## BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.10.0 
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.10.0
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=cs_CZ.UTF-8        LC_COLLATE=en_US.UTF-8    
##  [5] LC_MONETARY=cs_CZ.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=cs_CZ.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=cs_CZ.UTF-8 LC_IDENTIFICATION=C       
## 
## time zone: Europe/Prague
## tzcode source: system (glibc)
## 
## attached base packages:
## [1] grid      stats     graphics  grDevices utils     datasets  methods  
## [8] base     
## 
## other attached packages:
##  [1] mice_3.17.0        patchwork_1.2.0    ggrepel_0.9.5      robustlmm_3.3-1   
##  [5] gridExtra_2.3      pheatmap_1.0.12    performance_0.12.2 quantreg_5.98     
##  [9] SparseM_1.81       bayesplot_1.8.1    ggdist_3.3.2       kableExtra_1.4.0  
## [13] lubridate_1.8.0    corrplot_0.92      arm_1.12-2         MASS_7.3-64       
## [17] projpred_2.0.2     glmnet_4.1-8       boot_1.3-31        cowplot_1.1.1     
## [21] pROC_1.18.0        mgcv_1.9-1         nlme_3.1-167       openxlsx_4.2.5    
## [25] flextable_0.9.6    sjPlot_2.8.16      car_3.1-2          carData_3.0-5     
## [29] gtsummary_2.0.2    emmeans_1.10.4     ggpubr_0.4.0       lme4_1.1-35.5     
## [33] Matrix_1.7-0       forcats_1.0.0      stringr_1.5.1      dplyr_1.1.4       
## [37] purrr_1.0.2        readr_2.1.2        tidyr_1.3.1        tibble_3.2.1      
## [41] ggplot2_3.5.1      tidyverse_1.3.1   
## 
## loaded via a namespace (and not attached):
##   [1] splines_4.4.3           later_1.3.0             gamm4_0.2-6            
##   [4] cellranger_1.1.0        datawizard_0.12.2       rpart_4.1.24           
##   [7] reprex_2.0.1            lifecycle_1.0.4         rstatix_0.7.0          
##  [10] lattice_0.22-5          insight_0.20.2          backports_1.5.0        
##  [13] magrittr_2.0.3          sass_0.4.9              rmarkdown_2.27         
##  [16] yaml_2.3.5              httpuv_1.6.5            zip_2.2.0              
##  [19] askpass_1.1             DBI_1.1.2               minqa_1.2.4            
##  [22] RColorBrewer_1.1-2      multcomp_1.4-18         abind_1.4-5            
##  [25] rvest_1.0.2             nnet_7.3-20             TH.data_1.1-0          
##  [28] sandwich_3.0-1          gdtools_0.3.7           crul_1.5.0             
##  [31] cards_0.2.2             MatrixModels_0.5-3      commonmark_1.9.1       
##  [34] svglite_2.1.3           codetools_0.2-19        xml2_1.3.3             
##  [37] tidyselect_1.2.1        shape_1.4.6             farver_2.1.0           
##  [40] ggeffects_1.7.0         httpcode_0.3.0          base64enc_0.1-3        
##  [43] matrixStats_1.3.0       jsonlite_1.8.8          mitml_0.4-3            
##  [46] ellipsis_0.3.2          ggridges_0.5.3          survival_3.7-0         
##  [49] iterators_1.0.14        systemfonts_1.0.4       foreach_1.5.2          
##  [52] tools_4.4.3             ragg_1.2.1              Rcpp_1.0.13            
##  [55] glue_1.7.0              pan_1.6                 xfun_0.46              
##  [58] distributional_0.4.0    loo_2.4.1               withr_3.0.1            
##  [61] fastmap_1.2.0           fansi_1.0.6             openssl_1.4.6          
##  [64] digest_0.6.37           R6_2.5.1                mime_0.12              
##  [67] estimability_1.5.1      textshaping_0.3.6       colorspace_2.0-2       
##  [70] markdown_1.13           utf8_1.2.4              generics_0.1.3         
##  [73] fontLiberation_0.1.0    data.table_1.15.4       robustbase_0.93-9      
##  [76] httr_1.4.2              htmlwidgets_1.6.4       pkgconfig_2.0.3        
##  [79] gtable_0.3.0            htmltools_0.5.8.1       fontBitstreamVera_0.1.1
##  [82] scales_1.3.0            knitr_1.48              rstudioapi_0.16.0      
##  [85] tzdb_0.2.0              uuid_1.0-3              coda_0.19-4            
##  [88] curl_4.3.2              nloptr_2.0.0            zoo_1.8-9              
##  [91] sjlabelled_1.2.0        parallel_4.4.3          pillar_1.9.0           
##  [94] vctrs_0.6.5             promises_1.2.0.1        jomo_2.7-3             
##  [97] dbplyr_2.1.1            xtable_1.8-4            evaluate_1.0.0         
## [100] fastGHQuad_1.0.1        mvtnorm_1.1-3           cli_3.6.3              
## [103] compiler_4.4.3          rlang_1.1.4             crayon_1.5.0           
## [106] rstantools_2.1.1        ggsignif_0.6.3          labeling_0.4.2         
## [109] modelr_0.1.8            plyr_1.8.6              sjmisc_2.8.10          
## [112] fs_1.6.4                stringi_1.7.6           viridisLite_0.4.0      
## [115] assertthat_0.2.1        munsell_0.5.0           fontquiver_0.2.1       
## [118] sjstats_0.19.0          hms_1.1.1               gfonts_0.2.0           
## [121] shiny_1.9.1             haven_2.4.3             gt_0.11.0              
## [124] broom_1.0.6             DEoptimR_1.0-10         readxl_1.3.1           
## [127] officer_0.6.6